02_不声明第三个变量实现冒泡排序

来源:互联网 发布:记住英国历史 知乎 编辑:程序博客网 时间:2024/05/29 03:35


function bubble(arr){

for(var n=1;n<arr.length-1;n++){          //一共需要遍历arr.length-1次,才能将所有数字排正确。

for(var i=0;i<arr.length-n;i++){//遍历数组中每个值,每遍历一遍,就确定一个最大值,下一次遍历就少1次  所以每次遍历的次数是arr.length-n;

if(arr[i]>arr[i+1]){//当当前值大于下一个值时

arr[i]+=arr[i+1];//替换当前值和下一个值的位置

arr[i+1]=arr[i]-arr[i+1];

arr[i]-=arr[i+1]

}

}

}

return arr;

}

var arr=[8,7,6,5,8,7,6,2,3,4,3,2,1];

console.log(bubble(arr));//[1,2,2,3,3,4,5,6,6,7,7,8,8]

0 0