生活随笔
收集整理的這篇文章主要介紹了
详解基数排序
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
1:基數(shù)排序
void maximumGap(vector
<int>& nums
) {if(nums
.size() < 2) return 0;int exp
= 1;vector
<int> buf(nums
.size());int maxVal
= *max_element(nums
.begin(),nums
.end());while(maxVal
>= exp
) {vector
<int> cnt(10);for (int i
= 0; i
< nums
.size(); i
++) {int digit
= (nums
[i
] / exp
) % 10;cnt
[digit
]++;}for (int i
= 1; i
< 10; i
++) {cnt
[i
] += cnt
[i
- 1]; }for (int i
= nums
.size() - 1; i
>= 0; i
--) {int digit
= (nums
[i
] / exp
) % 10;buf
[cnt
[digit
] - 1] = nums
[i
];cnt
[digit
]--;}copy(buf
.begin(), buf
.end(), nums
.begin());exp
*= 10;}for(int i
= 0; i
< nums
.size(); i
++){cout
<< nums
[i
] << " ";}
2:計(jì)數(shù)排序
- hashArray,其中array中的數(shù)值表示了該下標(biāo)在數(shù)組中出現(xiàn)的次數(shù)
- 0,就是沒(méi)有出現(xiàn),1,出現(xiàn)了一次,2出現(xiàn)了兩次
總結(jié)
以上是生活随笔為你收集整理的详解基数排序的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。