首頁  >  文章  >  web前端  >  JavaScript中的計數排序詳解

JavaScript中的計數排序詳解

韦小宝
韦小宝原創
2018-03-14 14:25:171343瀏覽

這篇文章講述了JavaScript中的計數排序,大家對JavaScript中的計數排序不了解的話或者對JavaScript中的計數排序感興趣的話那麼我們就一起來看看本篇文章吧, 好了廢話少說進入正題吧

計數排序的核心在於將輸入的資料值轉換為鍵儲存在額外開闢的陣列空間中。作為一種線性時間複雜度的排序,計數排序要求輸入的資料必須是有確定範圍的整數

計數排序動圖示範

JavaScript中的計數排序詳解

JavaScript程式碼實作:

function countingSort(arr, maxValue) {  
    var bucket = new Array(maxValue+1),  
        sortedIndex = 0;  
        arrLen = arr.length,  
        bucketLen = maxValue + 1;  
  
    for (var i = 0; i < arrLen; i++) {  
        if (!bucket[arr[i]]) {  
            bucket[arr[i]] = 0;  
        }  
        bucket[arr[i]]++;  
    }  
  
    for (var j = 0; j < bucketLen; j++) {  
        while(bucket[j] > 0) {  
            arr[sortedIndex++] = j;  
            bucket[j]--;  
        }  
    }  
  
    return arr;}

以上就是這篇文章的所有內容,大家要是還不太了解的話,可以自己多實現兩邊就很容易掌握了哦!

相關推薦:
JS實作的計數排序與基數排序演算法範例

以上是JavaScript中的計數排序詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn