您的位置:首页 > 其它

冒泡排序并统计其循环次数

2015-08-19 13:18 330 查看
#include <stdio.h>
void Bubble_sort(int *Addr, int Length);

int main(void)
{
int a[8] = { 55, 68, 12, 3, 66, 64, 23, 14 };
int len;
len = sizeof(a) / sizeof(a[0]);

Bubble_sort(a, len);

printf("%d %d %d %d %d %d %d %d\n", a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]);

return 0;

}

void Bubble_sort(int *Addr, int Length)
{
int cycle, temp, i, n, j;
cycle = temp = 0;
j = Length;
for (i = 1; i < Length; ++i)
{
j -= 1;

for (n = 0; n < j; ++n)
{
if (Addr
> Addr[n + 1])
{
temp = Addr
;
Addr
= Addr[n + 1];
Addr[n + 1] = temp;
}
cycle++;
}
//cycle++;
}

printf("Bubble_sort共执行了%d次循环\n", cycle);

return;
}

/*
vc2013:
*******************************
Bubble_sort共执行了28次循环
3 12 14 23 55 64 66 68
请按任意键继续. . .
*******************************
*/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  c