数组的选择排序和冒泡排序

为君一笑 提交于 2019-12-03 06:32:12
选择排序的规则:将第一位数据和后面的所有的数据依次比较,找到最小值并放到第一位
 
function arr(myarr){
    for(var i =0;i < myarr.length-1;i++){ 确定比较的行数
        var min=s[i];                     用来假设第一位是最小的
        var minwz=i;                     保存最小值所在的位置
        for(var j=i+1 ;j < myarr.length;j++){        确定比较的次数
            if(min > s[j] ){                  比较,判断刚才的假设是否正确,不正确
                min=s[j];                    保存真的最小值
                minwz=j;
            }
        }
        s[minwz]=s[i];                    先将第一位挪开,在将最小值放在第一位
        s[i]=min
    }
}
var s=[12,34,57,23,11];
arr(s);
console.log(s);
 
 
冒泡排序:两两比较,大的放后面
 
function fn(myarr){
    for(var i =0;i < myarr.length-1;i++){
        for(var j = 0;j <  myarr.length-1-i;j++){
            if(s[j] > s[j + 1]){
                var ls=s[j];
                s[j]=s[j + 1];
                s[j + 1]=ls;
            }
        }
    }
}
var s=[12,34,56,78,34,23];
fn(s);
console.log(s);
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!