程序员必会算法之冒泡排序
var arr=[91,18,7,26,5]
//第一轮
//91 18 7 26 5 91 18
//18 91 7 26 5 91 7
//18 7 91 26 5 91 26
//18 7 26 91 5 91 5
//18 7 26 5 91
//第二轮
//18 7 26 5 91 19 7
//7 18 26 5 91 18 26
//7 18 26 5 91 26 5
//7 18 5 26 91 26 91
//7 18 5 26 91 多余
//第三轮
//7 18 5 26 91 7 18
//7 18 5 26 91 18 5
//7 18 5 26 91
//7 18 5 26 91
//7 18 5 26 91
//第四轮
//5 7 18 26 91
//5 7 18 26 91
//5 7 18 26 91
//5 7 18 26 91
//5 7 18 26 91
外层循环控制的是比较的轮数
for(var i = 0; i <arr.length - 1, i++ ){
//内层循环比较的是相邻的值,每次能拿到最大的值放在后面
for(var j = 0; j < arr.length - 1 - i; j++){
//如果前面的值比后面的值大就交换
if(arr[j] > arr[j+1] ){
//交换j和j+1的值
var temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
console.log(arr) //arr(5,7,18,26,91)
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
THE END
二维码