冒泡排序(C语言)

前不久,写了一段代码,是针对于数组排序,没想到它居然有专属名字-“冒泡排序”

今天,我又整理了一下思路,决定把它发表出来:

//冒泡排序

#include 
int main()
{
	int data[] = { 1,3,5,7,9,0,8,6,4,2 };
	int sz = sizeof(data) / sizeof(data[0])-1;//计算数组大小,其中,“-1”指的是减去“\n”这一字符
	for (int i = 0; i < sz; i++)//外层循环是比较的轮数,数组内有sz个数,就应该比较sz-1轮
	{
		for (int j = 0; j < sz; j++)//内层循环比较的是当前一轮的比较次数,例如,第一轮比较sz-2次,第二次比较sz-3次
		{
			if (data[j] > data[j + 1])
			{
				int b = data[j];
				data[j] = data[j + 1];
				data[j + 1] = b;
			}
		}
		
	}
	for (int i = 0; i < sz; i++)
	{
		printf("%d ", data[i]);
	}
	return 0;
}

你可能感兴趣的:(c语言,算法)