早教吧作业答案频道 -->其他-->
区间排序算法的实现,代码C++,排序算法的问题假设含假设含n个数据元素的序列中,所有关键字为介于个数据元素的序列中,所有关键字为介于u和w之间的整数,且其中很多关键字值是相同.则
题目详情
区间排序算法的实现,代码C++,排序算法的问题
假设含 假设含 n个数据元素的序列中,所有关键字为介于 个数据元素的序列中,所有关键字为介于 u和 w之间的整数,且其 中很多关键字值是相同.则可按如下方法进行排序:设数组 number[0..w-u]且令 number[i] 统计关 键字 等于 整数 u+i的数据元素个数,然后按 number [ ]的值重排序列以达到有序.
假设含 假设含 n个数据元素的序列中,所有关键字为介于 个数据元素的序列中,所有关键字为介于 u和 w之间的整数,且其 中很多关键字值是相同.则可按如下方法进行排序:设数组 number[0..w-u]且令 number[i] 统计关 键字 等于 整数 u+i的数据元素个数,然后按 number [ ]的值重排序列以达到有序.
▼优质解答
答案和解析
{
int u,w;
u= min in Input;
w= max in Input;
int *bucket=new int[w-u+1];
for(int i=0;i bucket[i]=0;
for(int i=0;i bucket[Input[i]-u]++;
// print result;
for(int i=0;i while(bucket[i])
{
cout< bucket[i]--;
}
这不就类似于桶排序么,只不过桶的大小为序列的最大值减去最小值+1而已.
伪代码如下:
void bucketsort(int * Input,int len){
int u,w;
u= min in Input;
w= max in Input;
int *bucket=new int[w-u+1];
for(int i=0;i
for(int i=0;i
// print result;
for(int i=0;i
{
cout<
}
看了区间排序算法的实现,代码C++...的网友还看了以下:
如果能三等分角,社会会给什么奖赏,如果用哲学观点,是能够实现的,很有意思啊.有人费了十八牛四虎.. 2020-05-14 …
有一首歌,里面完美这个词出现的很多,歌名是什么就是很多 完美 这一个词语. 不是完美世界 2020-05-17 …
服务器上出现的很多莫名其妙的故障都是尘土惹的祸,一般来说半年都应定期拆机打扫一次。 2020-05-31 …
英语翻译英语作文:内容翻译:三月二十五日,我校举办了运动会,我们班成绩最好,李明跳高第一,刘梅跳远 2020-06-06 …
电影了出现的很Q是什么单词来的?看英文电影经常出现发音类似Q的单词来形容一个女孩很可爱或者一个男的 2020-06-16 …
英语翻译英文网站或报纸中,经常出现的TODAYFEATUREDARTICLE,其中有关FEATUR 2020-07-08 …
寻找成语成龙电影里面的一个人物形象!电影是替身传奇别名(奇迹)里面玫瑰夫人在女儿面前表现的很有钱, 2020-07-24 …
英语翻译canyousendmeanapkin?youlaughatmelooksasifsoug 2020-07-25 …
有一个高中时语文读本里面的典故.记不请楚具体是什么了.典故大致讲的是从前一个人在家里妻儿面前表现的很 2020-11-24 …
鲁迅说:“明之中叶,即嘉靖前后,小说出现的很多,其中有两大主潮:一、讲神魔之争的;二、讲世情的。…… 2020-12-22 …