javascript冒泡数组元素排序

var init=[23,12,46,24,87,65,18,14,43,434,65,76]
function bubbleSort(copy) {//创建冒泡函数
var arr=copy.concat();//副本数据
var length=arr.length;//数组长度
for(var i=0;i<length-1;i++){//lengh个数据要排序完,需要length-1次,总有一个是最小的
for (var j = 0; j < length-1-i; j++) {//内部循环每次排序要跑length-1-i次,为什么了,对于已经排到最后的老大,比较也好,不比较也罢,当然为了效率,直接把它减掉是最好的
if(arr[j]>arr[j+1]){//相当于三个杯子换水的问题
var save=arr[j];
arr[j]=arr[j+1];
arr[j+1]=save;
}
}
}return arr;
}
console.log(bubbleSort(init));
*
冒泡排序法 口诀:
外层循环 0到n-1 //控制比较轮数 n 表示元素的个数
内层循环 0到n-i-1 //控制每一轮比较次数

上一篇:第十周助教总结


下一篇:插入排序