排序 ——冒泡排序
原创
©著作权归作者所有:来自51CTO博客作者SINOTHK的原创作品,谢绝转载,否则将追究法律责任
/*
时间:2012年5月18日 20:31:33
功能:冒泡排序。
*/
# include <stdio.h>
//原代码。修改伪代码:1. i,j=1改为i,j=0; 2. data[0] 改为 int temp 。
/*void BubblesSort(int data[], int len)
{
int i, j, tag;
for(i=0,tag=1; tag==1&&i<len; i++)
{
tag = 0;
for (j=0; j<=len-i;j++)
{
if(data[j] > data[j+1])
{
int temp = data[j];
data[j]=data[j+1];
data[j+1] = temp;
tag = 1;
}
}
}
}*/
//修改
void BubblesSort(int data[], int len)
{
int i, j, tag;
for(i=0; i<len-1; i++)
{
for (j=i+1; j<len;j++)
{
if(data[i] > data[j])
{
int temp = data[i];
data[i]=data[j];
data[j] = temp;
}
}
}
/*
未排序前:
5 7 1 6 44 11 56 33 45 0
排序以后:
0 1 5 6 7 11 33 44 45 56
Press any key to continue
*/
}
// 数组输出。
void OutPut(int data[], int len)
{
for (int i=0; i<len; i++)
{
printf("%d ", data[i]);
}
printf("\n\n");
}
int main(void)
{
int data[] = {5, 7, 1, 6, 44, 11, 56, 33, 45, 0};
printf("未排序前:\n");
OutPut(data, 10);
BubblesSort(data, 10);
printf("排序以后:\n");
OutPut(data, 10);
return 0;
}
/*
结果:
---------------------------------------
未排序前:
5 7 1 6 44 11 56 33 45 0
排序以后:
0 1 5 6 7 11 33 44 45 56
Press any key to continue
---------------------------------------
*/
上一篇:希尔排序
下一篇:排序 —— 归并排序
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
排序之冒泡排序
冒泡排序
排序 冒泡 -
101,排序-冒泡排序
从这一节开始就暂时不做题了,先了解一下常用的排序算法,查找算法以及常用的几种数据结构,完了之后再继续做题。首先第一个常见的排序估计就是冒泡排序了
数组 冒泡排序 排序算法 c语言 数据结构 -
排序算法 —— 冒泡排序
基本思想n个元素,从第1个开始,依次比较相邻...
逆序 i++ 数据 #include 冒泡排序