function createArray(length, max) { var data = []; for (var i = 0; i < length; i++) { data[i] = Math.round(max * Math.random()); } return data; }
function swap (data, i, j) { var tmp = data[j]; data[j] = data[i]; data[i] = tmp; }
function bubbleSort (data) { for (var i = 0; i < data.length; i++) { for (var j = 0; j < data.length - 1; j++) { if (data[j] > data[j+1]) { swap(data, j, j+1); } } } } var data = createArray(100, 1000); bubbleSort(data); data;
Complexity: O(n^2)
function insertionSort (data) { for (var i = 0; i < data.length; i++) { var j = i; while (j > 0 && data[i] < data[j-1]) { j--; } for (var k = i; k > j; k--) { swap(data, k, k-1); } } } var data = createArray(100, 1000); insertionSort(data); data;