Отсортировать числа в массиве в порядке возрастания
Как можно еще упростить данный код?
function numbersSort(array) {
var done = false;
while (!done) {
done = true;
for (var i = 1; i < array.length; i++) {
if (array[i - 1] > array[i]) {
done = false;
var tmp = array[i - 1];
array[i - 1] = array[i];
array[i] = tmp;
}
}
}
return array;
}
console.log(numberSort([2, 35, 1, 7]));
Ответы (2 шт):
Автор решения: Samuil Farzaliyev
→ Ссылка
Вот короткий вариант.
function numbersSort(array) {
return array.sort((a, b) => a - b);
}
console.log(numbersSort([2, 35, 1, 7]));
Автор решения: Pavel Nazarian
→ Ссылка
function numbersSort(a,next = 0) {
if (next == a.length) return a;
for (let i=next; i<a.length; i++) {
if (a[next] > a[i]) [a[next],a[i]] = [a[i],a[next]];
}
return numbersSort(a,next+1);
}
console.log(numbersSort([2, 35, 1, -1, 7, 2]));