中文字幕在线一区二区在线,久久久精品免费观看国产,无码日日模日日碰夜夜爽,天堂av在线最新版在线,日韩美精品无码一本二本三本,麻豆精品三级国产国语,精品无码AⅤ片,国产区在线观看视频

      深入理解JS實現快速排序和去重javascript技巧

      時間:2024-10-28 00:33:12 JavaScript 我要投稿
      • 相關推薦

      深入理解JS實現快速排序和去重javascript技巧

        JS的快速排序和JS去重在面試的時候問的挺多的.下面是我對快速排序的理解,和快速排序,去重的代碼.

        1.什么是快速排序?

        第一步: 快速排序就是去個中間值,把比中間值小的放在左邊設為arrLeft,比中間值大的放在右邊設為arrRight

        第二步: 對arrLeft進行第一步,對arrRight進行第一步.(明顯是一個遞歸嘛,當數組的長度小于2的時候結束)

        第三步: 合并arrLeft,中間值,arrRight

        quickSort = function(arr){if(arr.length < ){return arr;}var tmp = arr.splice(Math.floor(arr.length/), )[],arrLeft = [],arrRight = [];for(var i = ; i < arr.length; i++){if(arr[i] >= tmp){arrRight.push(arr[i]);}else{arrLeft.push(arr[i]);}}return arguments.callee(arrLeft).concat(tmp,arguments.callee(arrRight));}

        2.JS的去重?

        大家第一個想到的應該是,循環一次數組,每取到一個值就與后面的比較,如果沒有相同的就放入一個新數組里面,這樣就去重了

        第一種

        var unique = function(arr){var newArr = [];while(arr.length){var value = arr.shift();for(var i = , len = arr.length; i<len; i++){if(value==arr[i]){break;}}if(i==len){newArr.push(value);}}return newArr;}

        但是這樣循環了二次,效率不好.下面提供的較好,聲明一個對象,數組的值作為對象的屬性并賦值為一,然后判斷這個對象屬性是否存在就行了

        第二種

        var unique = function(arr){var arr = [];var obj = {};for(var i = , len = a.length; i < len; i++){if(!obj[a[i]]){obj[a[i]] = ;arr.push(a[i]);}}console.log(obj)return arr;};

        還有一種就是排序并去重 ,這種就更加容易了.判斷前面一個值是不是等于后面一個值如果相等,往后移動一位就行了

        第三種

        var unique = function(arr){var newArr = [];for(var i = , len = arr.length; i<len; i++){if(arr[i] !==arr[i+]){newArr.push(arr[i]);}if(i==len){newArr.push(arr[i]);}}return newArr;}

        以上所述是小編給大家介紹的JS實現快速排序和去重,希望對大家有所幫助,如果大家有任何疑問請給我們留言,小編會及時回復大家的。在此也非常感謝大家對的支持!

      【深入理解JS實現快速排序和去重javascript技巧】相關文章:

      常用排序算法之JavaScript實現代碼段06-04

      有關深入理解JavaScript中的并行處理的介紹10-14

      對javascript的理解08-08

      JavaScript 小型打飛機游戲實現和原理說明08-18

      理解JavaScript原型鏈教程09-02

      JavaScript實現網頁刷新代碼段08-07

      如何快速的認識和理解EXCEL辦公軟件08-26

      javascript的閉包概念怎么理解06-15

      高效編寫JavaScript代碼的技巧08-25

      javascript面向對象中的對象怎么理解09-02

      主站蜘蛛池模板: 国产男女猛烈无遮挡免费视频网址| 免费一级a毛片在线播出| 99久久精品一区二区毛片吞精| 在线免费av一区二区| 最新永久免费AV网站| 淫妇日韩中文字幕在线| 久久精品国产av大片| 国产一区二区三区高清视频| 91精品国产高清久久久久| 午夜精品亚洲一区二区| 亚洲在线一区二区三区四区| AV熟妇导航网| 辽阳市| 中文无码日韩欧免费视频| 日韩精品人妻中文字幕有码视频| 性色av成人精品久久| 91精品国产91久久综合桃花| 吴川市| 绥江县| 亚洲在战AV极品无码| 亚洲成人免费在线视频观看| 亚洲中中文字幕第一页| 国产后入内射在线观看| 亚洲大片中文字幕久久| 高h视频在线免费观看| 盐津县| 白白色发布在线播放国产| 开心五月婷婷激情在线| 久久亚洲精品一区二区| 手机AV片在线| 日本香蕉久久一区二区视频| 无码久久精品蜜桃| 男人的天堂av一二三区| 精品久久久中文字幕一区| 国内少妇高潮嗷嗷叫在线观看 | 精品系列无码一区二区三区| 亚洲av伊人久久综合性色| 国内视频一区| 亚洲国产综合专区在线电影 | 鄂伦春自治旗| 亚洲二区三区在线播放|