优化的冒泡排序C代码
作者:不详 发布时间:[ 2010/6/3 13:20:36 ] 推荐标签:
#include <stdio.h>
void bsort(char *arr, int len)
{
int i, j, k, t, cnt = 0;;
for(i = len - 1; i > 0; i = k) {
for (j = 0, k = 0; j < i; j++) {
if (*(arr + j) > *(arr + j + 1)) {
t = *(arr + j);
*(arr + j) = *(arr + j + 1);
*(arr + j + 1) = t;
k = j;
}
}
cnt++;
}
printf("cycle %d ", cnt);
}
int main(int argc, char *argv[])
{
int i = 0;
char arr[10] = {3, 2, 5, 4, 4, 5, 6, 7, 8, 9};
while (i < 10) {
printf("%d ", arr[i++]);
}
i = 0;
putchar(‘ ‘);
bsort(arr, 10);
while (i < 10) {
printf("%d ", arr[i++]);
}
putchar(‘ ‘);
}
本文内容不用于商业目的,如涉及知识产权问题,请权利人联系SPASVO小编(021-61079698-8054),我们将立即处理,马上删除。

sales@spasvo.com