中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何使用js實現計數排序

發布時間:2020-04-01 14:01:54 來源:億速云 閱讀:175 作者:小新 欄目:web開發

如何使用js實現計數排序?很多人都不太了解,今天小編為了讓大家更加了解js實現計數排序的方法,所以給大家總結了以下內容,一起往下看吧。

如何使用js實現計數排序

原版計數排序,桶的容積需要一個可以包含最小值到最大值所有可能出現的數字。這里我們可以將桶換成對象,利用對象的自動排序與不能出現相同屬性名的鍵值對這兩個特點,不需要一個有序容積的桶,隨意新增鍵值對即可。代碼如下

var ary=[23,14,12,24,53,31,53,35,46,12,62,23]

代碼示例如下:

function countSort(arr){
  let obj={};
  //遍歷原數組,給對象新增鍵值對,如果已經存在就對應的屬性值++,如果不存在則新增鍵值對
  for(let i=0;i<arr.length;i++){
    if(!obj[arr[i]]){
      obj[arr[i]]=1;
    }else{
      obj[arr[i]]++;
    } 
    }
  let index=0;
  //遍歷對象屬性名,按順序放回覆蓋原數組
  for(let key in obj){
    while(obj[key]>0){
      arr[index]=Number(key);
      obj[key]--;
      index++
    }
  }
  return arr;
}
 
console.log(countSort(ary));

以上就是如何使用js實現計數排序的簡略介紹,當然詳細使用上面的不同還得要大家自己使用過才領會。如果想了解更多,歡迎關注億速云行業資訊頻道哦!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

炉霍县| 吴江市| 萨迦县| 定襄县| 榆社县| 新源县| 镇远县| 泌阳县| 东辽县| 遵义县| 蒙阴县| 车险| 罗山县| 白沙| 光泽县| 大姚县| 德兴市| 崇左市| 鲁甸县| 琼中| 阿巴嘎旗| 贵港市| 改则县| 中西区| 湖州市| 新密市| 南丰县| 平南县| 松溪县| 柘荣县| 慈溪市| 邢台县| 张掖市| 孝感市| 金平| 昭通市| 西华县| 双城市| 英吉沙县| 惠来县| 平塘县|