1,冒泡排序


冒泡排序,代码来自CSDN,本人稍作修改可以看到排序过程。由于考研时间比较紧张,有空再回来补说明(着急了也可以去看看人家的原文,原文链接)

#include
#include
//冒泡排序
void BubbleSort(int a[], int len)
{
	int i, j, temp;
	for (j = 0; j < len - 1; j++)
	{
		for (i = 0; i < len - 1 - j; i++)
			if (a[i] > a[i + 1])
		{
			temp = a[i];
			a[i] = a[i + 1];
			a[i + 1] = temp;
		}
		printf("第%d次\t",j);
		for (i = 0; i < len; i++)
		{
			
			printf("%d ", a[i]);
		}
		printf("\n");
	}
	
}

int main()
{
	int arr[] = { 5, 8, 6, 3, 9, 2, 1, 7 };
	int len = sizeof(arr) / sizeof(arr[0]);
	int i = 0;
	printf("排序前:");
	for (i = 0; i < len; i++)
	{
		printf("%d ", arr[i]);
	}
	printf("\n");
	printf("-----------------------\n");
	
	BubbleSort(arr, len);
	printf("-----------------------\n");
	printf("结果为:");
	for (i = 0; i < len; i++)
	{
		printf("%d ", arr[i]);
	}
	printf("\n");
	system("pause");
	return 0;
}