c语言 帮忙写一个二分排序的程序代码
答案:2 悬赏:80
解决时间 2021-02-17 23:28
- 提问者网友:他是我的あ男人
- 2021-02-17 01:23
c语言 帮忙写一个二分排序的程序代码
最佳答案
- 二级知识专家网友:青春如此荒謬
- 2021-02-17 01:55
void sort(int* a, int n){
//当分组中的数据是1个或0个时,分组结束
if(n<=1)return;
//将数据分成两个组
int L,R;
L = 0;
R = n-1;
while(L
while(L
swap(a[L], a[R]);
while(L
swap(a[L], a[R]);
}
//对左边的组再进行分组
sort(a, L);
//对右边的组再进行分组
sort(a+L+1,n-L-1);
}
//当分组中的数据是1个或0个时,分组结束
if(n<=1)return;
//将数据分成两个组
int L,R;
L = 0;
R = n-1;
while(L
while(L
}
//对左边的组再进行分组
sort(a, L);
//对右边的组再进行分组
sort(a+L+1,n-L-1);
}
全部回答
- 1楼网友:duile
- 2021-02-17 02:04
#include <stdio.h> #include <string.h>
#define maxlen 100
void bubble_sort(char *x) { // 冒泡排序 char i,j,t; char n = strlen(x); for (i = 0; i < n - 1; i++) { for (j = i + 1; j < n; j++) { // 每次预置k=0,循环扫描后更新k if (*(x + j) < *(x + i)) { // 大的放在后面,小的放到前面 t = *(x + j); *(x + j) = *(x + i); *(x + i) = t; // 完成交换 } } } }
int main() { char s1[] = "73c4bf04"; char s2[] = "672dd2f3"; printf("排序前:s1[] = %s,s2[] = %s\n",s1,s2); bubble_sort(s1); bubble_sort(s2); printf("排序前:s1[] = %s,s2[] = %s\n",s1,s2); return 0; }
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯