将整数数组按照堆排序的方式原地进行升序排列,请问在整个排序过程
答案:1 悬赏:40 手机版
解决时间 2021-01-09 20:39
- 提问者网友:那叫心脏的地方装的都是你
- 2021-01-09 10:25
将整数数组按照堆排序的方式原地进行升序排列,请问在整个排序过程
最佳答案
- 五星知识达人网友:上分大魔王
- 2021-01-09 11:12
就是排序算法,可以考虑的算法包括:直接插入排序、希尔排序、冒泡排序、快速排序、选择排序、堆排序、归并排序、桶排序等。提供一个冒泡排序吧,其他的建议自己实现:
typedef int DT;
void swap(DT* a, DT* b){
if(a!=b){
*a=*a ^ *b;
*b=*a ^ *b;
*a=*a ^ *b;
}
}
void bubble(DT* from, int len, int(*cmp)(DT,DT)){
int i, j, flag;
for(i=0; iflag=0;
for(j=0;jif((from[j+1] swap(from+j+1, from+j);
flag=1;
}
if(!flag) break;
}
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯