成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

javascript數(shù)組排序(從小到大)

yimo / 1180人閱讀

摘要:參考鏈接十大經(jīng)典排序算法動(dòng)圖演示冒泡排序?qū)⒆畲蟮姆旁谧詈蟮诙N改善已經(jīng)排序好的最大數(shù)組不必在比較選擇排序

參考鏈接:十大經(jīng)典排序算法(動(dòng)圖演示)

冒泡排序
  //--------------------------
  for(var i=0,len=arr.length;iarr[j]){  //將最大的放在最后
            var temp=0;
            t=arr[i]; 
            arr[i]=arr[j];
            arr[j]=temp;
        }
      }
  }
  //--------第二種(改善)------------
  for(var i=1,len=arr.length;iarr[j+1]){  
            var temp=0;
            t=arr[i]; 
            arr[i]=arr[j];
            arr[j]=temp;
        }
      }
  }
選擇排序
//--------------------------
  for(var i=0,len=arr.length-1;iarr[j]){
            min=j;
        }
    }    
    if(min!=i){
        var temp=0;
        t=arr[min];
        arr[min]=arr[i];
        arr[i]=temp;
    }    
  }
直接插入排序
  for (int i = 1; i < arr.Length; i++){
    if (arr[i - 1] > arr[i])
    {
        int temp = arr[i];  //每次取出當(dāng)前的要比較的值
        int j = i;
        while (j > 0 && arr[j - 1] > temp) //大于它的話,要賦值給它
        {
            arr[j] = arr[j - 1];
            j--;
        }
        arr[j] = temp;
    }
}
js實(shí)現(xiàn)快速排序
//-----------------first---------------
var quickSort = function(arr){
    var arr = arr.concat(); //concat的新用法(深復(fù)制)
    if(arr.length<=1) return arr;
    var index = Math.floor(arr.length/2);
    var centerValue = arr.splice(index,1);
    //console.log(centerValue);
    var left = [];
    var right = [];
    for(var i=0,len=arr.length;i=arr[i]){
            left.push(arr[i]);
        }else{
            right.push(arr[i]);
        }
    }
    // debugger
    //console.log(quickSort(left));
    //console.log(right);
    var res1 = arguments.callee(left);
    var res2 = arguments.callee(right);
    //return left.concat(right);
    return res1.concat(centerValue,res2);
}
var arr=[9,8,7,4,5,3,77];          
  var result = quickSort(arr);
  console.log(result);
  console.log(arr);
//-----------------second---------------
  var quickSort = function(arr){
    if(arr.length<=1) return arr;
    var index = Math.floor(arr.length/2);
    console.log(index); //1
    var centerValue = arr.slice(index,index+1)[0];
    console.log(centerValue); //5
    var left = [];
    var right = [];
    for(var i=0,len=arr.length;i=arr[i]){
            left.push(arr[i]);
        }else{
            right.push(arr[i]);
        }
    }
    var res1 = arguments.callee(left);
    var res2 = arguments.callee(right);
    return res1.concat(res2);
}
var arr=[9,8,7,4,5,3,4,77];          
 //var result = quickSort(arr);
 //console.log(result);
 console.log(arr);
 var aa=[3,4];
 //console.log(aa.slice(1,2));
 console.log(aa.splice(0,0));
反轉(zhuǎn)排序
 for(var i=0,len=arr.length-1;i
參數(shù)排序
function mySort() {
    var tags = new Array();//使用數(shù)組作為參數(shù)存儲(chǔ)容器
    tags = Array.prototype.slice.call(arguments);
    tags.sort(function(a,b){
        return a-b;
    });
    return tags;//返回已經(jīng)排序的數(shù)組
}
var result = mySort(50,11,16,32,24,99,57,100); //傳入?yún)?shù)個(gè)數(shù)不確定
console.info(result); //顯示結(jié)果

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/88424.html

相關(guān)文章

  • JavaScript算法題:查找數(shù)字在數(shù)組中的索引

    摘要:我們必須對(duì)數(shù)字?jǐn)?shù)組進(jìn)行升序排序,并找出給定數(shù)字在該數(shù)組中的位置。算法說(shuō)明將值第二個(gè)參數(shù)插入到數(shù)組第一個(gè)參數(shù)中,并返回其在排序后的數(shù)組中的最低索引。我們的目標(biāo)是將輸入的數(shù)字在輸入數(shù)組后中排序后,再返回它的索引。 翻譯:瘋狂的技術(shù)宅原文:https://medium.freecodecamp.o... 本文首發(fā)微信公眾號(hào):前端先鋒歡迎關(guān)注,每天都給你推送新鮮的前端技術(shù)文章 編寫(xiě)算法時(shí)...

    darkerXi 評(píng)論0 收藏0
  • javascript插入排序

    摘要:算法原理插入排序是一種簡(jiǎn)單直觀的排序算法。插入排序在實(shí)現(xiàn)上,通常采用排序,因而在從后向前掃描過(guò)程中,需要反復(fù)把已排序元素逐步向后挪位,為最新元素提供插入空間。新元素插入當(dāng)前位置。 算法原理 插入排序是一種簡(jiǎn)單直觀的排序算法。它的工作原理非常類似于我們抓撲克牌。對(duì)于未排序的數(shù)據(jù)(右手抓到的牌),在已排序序列(左后已經(jīng)排好序的牌)中從后向前掃描,找到相應(yīng)位置并插入。插入排序在實(shí)現(xiàn)上,通常采...

    warnerwu 評(píng)論0 收藏0
  • javascript數(shù)組的幾個(gè)常用姿勢(shì)

    摘要:前言本文將分享幾個(gè)在項(xiàng)目中常用的數(shù)組方法原文地址不定期有干貨更新哦歡迎數(shù)組排序按數(shù)組元素大小從小到大進(jìn)行排序按數(shù)組元素大小從大到小進(jìn)行排序按數(shù)組元素的從小到大進(jìn)行排序按數(shù)組元素的從大到小進(jìn)行排序數(shù)組去重?cái)?shù)組深拷貝數(shù)組等份分割數(shù)組扁平 前言 本文將分享幾個(gè)在項(xiàng)目中常用的數(shù)組方法~ 原文地址: https://github.com/webfansplz... 不定期有干貨更新哦,歡迎wat...

    worldligang 評(píng)論0 收藏0
  • JavaScript中Array類型中的方法

    摘要:類型檢測(cè)數(shù)組檢測(cè)數(shù)組有以下幾種方法,前端保定就業(yè)方法前端保定就業(yè)前端保定就業(yè)前端保定就業(yè)轉(zhuǎn)換數(shù)組利用方法將數(shù)組轉(zhuǎn)換為字符串前端深圳保定輸出結(jié)果字符串前端深圳保定轉(zhuǎn)換原始值張三張三進(jìn)出棧方法在數(shù)組最后面添加新的元素前端保定深圳前端保定深圳在數(shù) Array類型 檢測(cè)數(shù)組 檢測(cè)數(shù)組有以下幾種方法, instanceof var arr=[前端,保定,就業(yè)]; console.log(arr ...

    _ipo 評(píng)論0 收藏0
  • JavaScript各種排序算法的實(shí)現(xiàn)及其速度性能分析

    摘要:今天我們來(lái)討論的問(wèn)題有兩個(gè)如何用實(shí)現(xiàn)選擇排序冒泡排序插入排序快速排序歸并排序堆排序?qū)ι傻娜f(wàn)個(gè)隨機(jī)數(shù)進(jìn)行排序,各個(gè)排序算法的性能分析??焖倥判蚩焖倥判蛩惴ɑ旧鲜敲嬖嚤乜寂判蛩惴ǎ彩莻髀勛詈糜玫乃惴?。 今天我們來(lái)討論的問(wèn)題有兩個(gè): 如何用JavaScript實(shí)現(xiàn)選擇排序、冒泡排序、插入排序、快速排序、歸并排序、堆排序; 對(duì)生成的10萬(wàn)個(gè)隨機(jī)數(shù)進(jìn)行排序,各個(gè)排序算法的性能分析。 創(chuàng)...

    yuanxin 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<