Java教程

排序算法

本文主要是介绍排序算法,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

const arr = [9, 8, 4, 2, 5, 7, 10, 1, 0, 88];
const sort = (arr, desc) => {
const _arr = [];
for (let temp of arr) {
if (_arr.length === 0) {
_arr.push(temp);
} else {
if (temp <= _arr[0]) {
_arr.unshift(temp);
} else if (temp >= _arr[_arr.length - 1]) {
_arr.push(temp);
} else {
for (let j in _arr) {
if (temp > _arr[j] && temp < _arr[Number(j) + 1]) {
_arr.splice(Number(j) + 1, 0, temp);
break;
}
}
}
}
}
return desc ? _arr.reverse() : _arr;
};

console.time("sort");
const asc = sort(JSON.parse(JSON.stringify(arr)));
console.log(asc);
console.timeEnd("sort");
console.time("sortDesc");
const desc = sort(JSON.parse(JSON.stringify(arr)), true);
console.log(desc);
console.timeEnd("sortDesc");

document.getElementById("origin-div").innerHTML =
"原始:" + JSON.stringify(arr);
document.getElementById("asc-div").innerHTML = "升序:" + JSON.stringify(asc);
document.getElementById("desc-div").innerHTML = "降序:" + JSON.stringify(desc);

这篇关于排序算法的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!