日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

使其正序排序 打印一串数字_JavaScript计数排序算法

發布時間:2023/12/4 javascript 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 使其正序排序 打印一串数字_JavaScript计数排序算法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、計數排序算法

計數排序(Counting sort)是一種穩定的線性時間排序算法。該算法于1954年由 Harold H. Seward 提出。計數排序使用一個額外的數組,數組的下標對應待排序的數字。然后根據新數組的下標來獲得正確的順序。就像給每個位置按數字順序做好標記,然后把對應數組放入其中,最后把下標打印出來即可。計數排序只適合數量較少的正整數排序。其算法復雜度接近于:O(N + K)

步驟是:

  • 找到待排序中最大和最小的元素;
  • 新建一個計數數組,長度為最大與最小值的差值+1;
  • 遍歷待排序數組,將數字與計數數組下標對應,按出現次數做標記;做對應時為了減少數組長度,可以用下標減去最小值;
  • 反向取出數據,按出現的次數逐個追加到輸出數組中。
  • 二、計數排序算法執行過程分析:

    三、計數排序代碼標準版實現

    標準版移植自C語言版,得到最大最小值,再新建空的計數數組,長度為差值+1,再統計對應下標的數字,最后將計數數組逐個還原打印出來。

    四、計數排序代碼簡版

    JS語言非常靈活好用,并不需要想C語言或Java等提前指定數組的大小,因此也沒有必要利用減少min來標記數據。整體思路就是利用下標統計對應的數字,然后按照下標取出數字來即可。代碼量非常少,也很簡單易懂。

    總結

    以上是生活随笔為你收集整理的使其正序排序 打印一串数字_JavaScript计数排序算法的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。