<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        JavaScript冒泡排序算法

        來源:懂視網 責編:小采 時間:2020-11-27 20:28:10
        文檔

        JavaScript冒泡排序算法

        JavaScript冒泡排序算法:via冒泡排序由于比較簡單和容易理解,往往會成為人們首先想到的排序算法。最基本的想法就是在一次里面比較兩個數字,并且確保他們在移動到其他項目之前有一個正確的順序。在每一關結束,有價值的排序到正確的位置,最終只留下其他項目排序。原文來自:h
        推薦度:
        導讀JavaScript冒泡排序算法:via冒泡排序由于比較簡單和容易理解,往往會成為人們首先想到的排序算法。最基本的想法就是在一次里面比較兩個數字,并且確保他們在移動到其他項目之前有一個正確的順序。在每一關結束,有價值的排序到正確的位置,最終只留下其他項目排序。原文來自:h

        via冒泡排序由于比較簡單和容易理解,往往會成為人們首先想到的排序算法。最基本的想法就是在一次里面比較兩個數字,并且確保他們在移動到其他項目之前有一個正確的順序。在每一關結束,有價值的“排序”到正確的位置,最終只留下其他項目排序。原文來自:http://caibaojian.com/javascript-bubble-sort.html

        算法實現思路

        對比第一項和第二項

        如果第一項應該在第二項的后面,交換他們

        對比第二項和第三項

        如果第二項應該在第三項之后,交換他們

        持續直到數據結束

        這個過程就是重復數次直到數據完全排序完畢,在每一次循環中,由于每一次的最后一項都是正確的排序,所以排序的項就越來越少。為了更好的理解,我們來進行一個數組對比一下:[3, 2, 4, 5, 1].

        例子對比過程

        首先是正排序,對比第一項和第二項,由于2比3小,所以3排到后面,結果是[2,3,4,5,1].

        第二項和第三項,順序是正確的,無須交換;第三項和第四項也是正確的,無須交換,第四項和第五項交換,結果為[2,3,4,1,5].

        再次循環第一項和第二項,依次到第三項和第四項交換,為[2,3,1,4,5]

        第三次循環,第二和第三交換為[2,1,3,4,5]

        第四次循環,第一和第二交換為[1,2,3,4,5]

        實現冒泡排序的第一步就是創建一個方法來交換數組里面的兩項,這個方法在很多低效率的排序中是比較常見的。一個簡單的javascript實現代碼為:

        function swap(items, firstIndex, secondIndex){
         var temp = items[firstIndex];
         items[firstIndex] = items[secondIndex];
         items[secondIndex] = temp;
        }

        via如上所述,這個排序算法由于需要進行多次的排序,效率是比較低的。假設一個數組有n個項,那么則需要2的n次方來計算,讓我們來看看這個原文來自:http://caibaojian.com/javascript-bubble-sort.html

        正向冒泡算法

        function bubbleSort(items){
        
         var len = items.length,
         i, j, stop;
        
         for (i=0; i < len; i++){
         for (j=0, stop=len-i; j < stop; j++){
         if (items[j] > items[j+1]){
         swap(items, j, j+1);
         }
         }
         }
        
         return items;
        }

        via外面的循環是控制了循環周期數,里面的循環則是項與項之間的排序比較。

        反向冒泡排序

        function bubbleSort(items){
         var len = items.length,
         i, j;
        
         for (i=len-1; i >= 0; i--){
         for (j=len-i; j >= 0; j--){
         if (items[j] < items[j-1]){
         swap(items, j, j-1);
         }
         }
         }
        
         return items;
        }

        via上面兩個代碼的結果是一樣的,都是從小到大排序,只是循環的順序略有不同,都是正序冒泡。

        反序冒泡排序

        其實就是判斷大小改變,第一項小于第二項時,交換位置,依次類推。

        function bubbleSort2(items){
        var len = items.length,
        i,j,stop;
        for(i=0;i<len; i++){
        for(j=0,stop=len-i;j<stop;j++){
        if(items[j]<items[j+1]){
        swap(items,j,j+1);
        }
        }
        }
        return items;
        }

        總結

        via再次說明一下,冒泡排序可能并不適用于你的實際工作中哦,它只是一個簡單的工具幫助我們了解算法并且為進一步獲取更多的知識打下基礎。而我們用得最多的可能是內置的Array.prototype.sort() 原型方法,這是由于它具有更高效率。

        更多JavaScript冒泡排序算法相關文章請關注PHP中文網!

        聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        JavaScript冒泡排序算法

        JavaScript冒泡排序算法:via冒泡排序由于比較簡單和容易理解,往往會成為人們首先想到的排序算法。最基本的想法就是在一次里面比較兩個數字,并且確保他們在移動到其他項目之前有一個正確的順序。在每一關結束,有價值的排序到正確的位置,最終只留下其他項目排序。原文來自:h
        推薦度:
        標簽: js javascript 算法
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 在线免费观看一区二区三区| 一个人免费视频观看在线www| 黄色成人免费网站| 91久久亚洲国产成人精品性色| 国产一级片免费看| 久久久久亚洲AV无码专区首JN| 最近免费中文字幕大全免费版视频 | 日本免费中文字幕| 亚洲gv白嫩小受在线观看| 亚在线观看免费视频入口| 亚洲蜜芽在线精品一区| 无码乱肉视频免费大全合集| 456亚洲人成在线播放网站| 最近2019中文字幕免费看最新 | 亚洲精品tv久久久久久久久| 久久精品国产免费| 久久久亚洲AV波多野结衣| 成年女人看片免费视频播放器| 亚洲精华液一二三产区| 亚洲精品国产V片在线观看| 免费观看一区二区三区| 亚洲福利秒拍一区二区| 四虎成人免费大片在线| sss在线观看免费高清| 337p欧洲亚洲大胆艺术| 好爽…又高潮了免费毛片| 72pao国产成视频永久免费| 亚洲精品tv久久久久久久久| 57pao国产成视频免费播放| 国产成人精品亚洲一区| 日本红怡院亚洲红怡院最新| 国产99视频精品免费观看7| 男女猛烈激情xx00免费视频| 亚洲AV成人一区二区三区AV| 日韩免费一区二区三区| 永久免费av无码入口国语片| 亚洲国产AV一区二区三区四区| 国产亚洲精品精品国产亚洲综合 | 国产公开免费人成视频| 久久精品一本到99热免费| 亚洲AV日韩综合一区|