程序员必会算法之冒泡排序

 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
分享
二维码
< <上一篇

)">
下一篇>>