A simple bubble sort script that runs in the browser console for demonstration purposes.
// ==UserScript==
// @name Console Bubble Sort Visualizer
// @namespace http://tampermonkey.net
// @version 1.0
// @description A simple bubble sort script that runs in the browser console for demonstration purposes.
// @author Your Name
// @match *://*://*
// @grant none
// @license riso
// ==/UserScript==
(function() {
'use strict';
/**
* Standard Bubble Sort with console visualization
* @param {Array} arr - The array to be sorted
*/
function bubbleSort(arr) {
let len = arr.length;
console.log("%c[Bubble Sort] Original Array:", "color: #2196F3; font-weight: bold;", [...arr]);
for (let i = 0; i < len - 1; i++) {
let swapped = false;
for (let j = 0; j < len - 1 - i; j++) {
if (arr[j] > arr[j + 1]) {
// Swap elements using destructuring assignment
[arr[j], arr[j + 1]] = [arr[j + 1], arr[j]];
swapped = true;
}
}
console.log(`[Round ${i + 1}] State:`, [...arr]);
// Optimization: If no two elements were swapped by inner loop, then break
if (!swapped) {
console.log("%c[Bubble Sort] Array is already sorted early!", "color: #4CAF50;");
break;
}
}
console.log("%c[Bubble Sort] Sorted Array:", "color: #4CAF50; font-weight: bold;", arr);
return arr;
}
// Run the sorting algorithm automatically when the script loads
const targetArray =[];
bubbleSort(targetArray);
})();