簡體   English   中英

桶分類運行時間

[英]Running time of Bucket sort

如果我們假設元素在給定范圍k中均勻分布,那么我們有10個存儲桶。 然后,在對列表中的n個元素進行一次迭代后,每個存儲桶中的元素數量將相同。 然后,例如,我們使用quicksort對每個存儲桶進行排序,但是我們知道每個存儲桶中的元素數量是恆定的,因此總運行時間不是Θ(n)嗎?

沒有。

將元素放入10個存儲桶中的值為O(N)。

用qsort對一個存儲桶排序為O(NlogN)(實際上為N / 10,但常數對復雜性並不重要)。

因此,總體復雜度將為O(N + 10 * N logN),即O(NlogN)(因為N <NlogN和常數10無關緊要)。

如果這太難理解了,請嘗試以下方法:如果有2個存儲桶而不是10個,那么您將對整個列表執行Qsort。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM