ref : Bucket Sort form GeeksforGeeks
ref : Bucket Sort from Leetcode
把目標數字分散在幾個桶子裡面,對每個桶子進行排序,最後依序取出數字,即為排序後的結果。
worst case : 全部的數值都在同一個bucket,
等於沒分類的效果,就是看你的sort algoritm,最壞情況是
best case : 每個bucket都只有一個element,不需要對每個bucket做sort,所以分配element:,把bucket內容組合起來,所以best case是
Best | Average | Worst | |
---|---|---|---|
Bucket Sort |
需要額外的空間儲放所有的element,所以
給你一個vector<int> nums, 找出index差小於等於k,且數字差小於等於t。
且 。
- 看到index差小於等於k,就會想到使用sliding window用兩個指標來代表window的前後。
- 重點是window裡面的資料怎麼排列?
- 因為兩個數的差小於等於t,可以使用bucket sort,每個bucket裡面的數字差一定小於等於t。
- bucket裡面不會有兩個以上的數字,因為只要是兩個就會成立離開。
- 還要跟前後的bucket去比較
leetcode
刷題