<script>
var arr = [4, 8, 9, 6, 3, 2, 1, 7, 5]
// 比较大小
function compare(a, b) {
return a - b > 0 ? true : false
}
// 前后交换
function exchange(arr, a, b) {
var temp = arr[a];
arr[a] = arr[b];
arr[b] = temp
}
//冒泡排序
// function bubbleSort(arr) {
// for(var i = 0 ;i <arr.length;i++){
// for (var j = 0; j < arr.length - 1 - i; j++) {
// //两个两个比
// if (compare(arr[j], arr[j + 1])) {
// exchange(arr, j, j + 1)
// }
// }
// }
// }
// 选择排序
function selectionSort(arr) {
for(i = 0 ;i <arr.length;i ++){
var max = 0;
//内层每一次循环都找到一个最大(小)的放到最后面
for(var j = 0; j < arr.length - i ;j++){
if(arr[max] < arr[j]) {
max = j;
}
}
exchange(arr,max,arr.length- 1 -i)
}
}
// bubbleSort(arr)
selectionSort(arr)
console.log(arr)
</script>
前端必会算法-冒泡排序和选择排序
最新推荐文章于 2024-05-12 04:22:25 发布