解析javascript中排序法如何进行

来源:互联网 发布:电脑群发短信软件 免费 编辑:程序博客网 时间:2024/06/02 02:13

解析javascript中排序法如何进行

快速排序法

从小到大排序例题:Arr=[2,1,4,6,7];

var arr=[2,1,4,6,7];
for(vari=0;i<arr.length;i++){
    for(j=i+1;j<arr.length;j++){
        if(arr[i]>arr[j]){
            vartemp=arr[i];
            arr[i]=arr[j];
            arr[j]=temp;
        }
    }
}document.write(arr);

这个排序主要是用数组位置来排序的,最小的排到下标最小的位置,外面循环控制循环的趟次,里面的循环完成称作一趟,定义两个数字,设i或j,循环一趟确定一个位置,循环数组的长度次,即排完了序。

冒泡法:

从小到大排序例题:arr[3,1,3,2,1];

var arr=[3,1,3,2,1];
for(vari=0;i<arr.length;i++){
    for(varj=0;j<arr.length-1-i;j++){
        if(arr[j]>arr[j+1]){
            vartemp=arr[j];
            arr[j]=arr[j+1];
            arr[j+1]=temp;
        }
    }
}document.write(arr);

冒泡法主要是从后开始排,与快速排序法形成对比,他是比较相邻的两数中最大的往后排,外层控制排序的趟次,里面的判断一趟需要比较几个相邻的,相邻的较大的数往后排,这样第一趟完成后,最大的数就在最后了,也就是数字下标最大的位置,在重新比较相邻的,这样重复下去,比较的次数每次都要少一次,直到外循环结束,排序完成。

希望可以给初学者一点思路,我也是初学者,有错及时反馈。


原创粉丝点击