javascript经典排序之插序

    xiaoxiao2024-12-11  58

    逻辑分析: 简单的说插序就是在一组数据中,找最大的数或最小的数放到第一位

    先一步一步来,我们先找数组中的最大的位置的索引

    var arr = [3,5,1]; function arrMax(arr){ var index = 0; for(var i = 0; i <= arr.length; i++){ if(arr[i] > arr[index]){ index = i; } } return index }; arrMax(arr,0); //1

    OK,上面已经找出最大值的索引了,一口气完成吧

    function arrSort(arr){ var len = arr.length-1; var arr2 = []; for(var i = 0; i <= len;i++){ var max = arrMax(arr,i); arr2.push(arr[max]) arr.splice(max,1) } arr = arr2; return arr; }

    上面的函数中没次的都创建了一个新的数组用来存放,排序好的数据。 今天的分享就到这里了。

    最新回复(0)