JSFiddle - React, Tailwind, and code Playground
by Anton Spirin
JavaScript
const array = Array(10000).fill(null).map(() => Math.random() * 1000);
var selectionSort = function(array) {
var temp;
for(var i=0; i<array.length; i++){
var mi = i;
for(var j = i + 1; j<array.length; j++) {
if(array[j] < array[mi])
mi = j;
}
temp = array[i];
array[i] = array[mi];
array[mi] = temp;
}
};
let t0 = performance.now();
const result = selectionSort(array);
let t1 = performance.now();
alert(t1 - t0);
console.log(result);
function sorting(arr) {
var
arr2 = [], // суда записываем min
min, // минимальнае число из arr
len = arr.length; // длина массива arr
if (len > 0) { //защита от дурака (если длина arr < 0 то сортировать нечего)
for (a = 0; a < len; a++) {
min = Math.min.apply(Math, arr); // вписываем минимальное число из arr
arr2.push(min); // добавляем это минимальное число в arr2
for (i = 0; i < arr.length; i++) {//этот цикл нужен чтобы найти порядковый номер минимального числа в arr
if (arr[i] == min) {
arr.splice(i, 1);//удаляем это минимально чискло
break; //скажите это нужно, это помогает? типо выйти из цикла если число найдено
}
}
}
}
arr = arr2;//все что записали в arr2 присвоим arr (arr2 все отсортировано)
return arr;//возвращаем arr
}
t0 = performance.now();
const result2 = sorting(array);
t1 = performance.now();
console.log(result2);
alert(t1 - t0);