您的位置:首页 > 其它

1万个元素的数组,90%的元素都是1到100的数,10%的元素是101--10000的数,如何高效排序。

2017-01-14 12:02 344 查看
#define RANGE 10000
int* sort(int* arr, int len) {
int* hashtable = new int[len];
memset(hashtable, 0, sizeof(int) * len);

for (int i = 0; i < len; ++i) {
hashtable[arr[i]]++;
}
return hashtable;
}

void printArrayFromHashTable(int* hash, int len) {
for (int i = 0; i < len; ++i) {
if (hash[i]) {
for (int j = 0; j < hash[i]; ++j) {
cout << i << ' ';
}
cout << endl;
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐