冒泡法
冒泡排序每一趟排序把最大的放在最右边。
比如:
87 12 56 45 78
87和12交换:12 87 56 45 78
87和56交换: 56 87 45 78
87和45交换: 45 87 78
87和78交换: 78 87
到此第一趟排序结束,接下来的每一趟排序都是这样。
#include<stdio.h>void Print(int *num, int n){ int i; for(i = 0; i < n; i++) printf("%d ", num[i]); puts("\n"); return;}void Bubble_Sort(int *num, int n){ int i, j; for(i = 0; i < n; i++) { for(j = 0; i + j < n - 1; j++) { if(num[j] > num[j + 1]) { int temp = num[j]; num[j] = num[j + 1]; num[j + 1] = temp; } Print(num, n); } } return;}int main(){ int num[8] = {87, 12, 56, 45, 78}; Bubble_Sort(num, 5); return 0;}
本文详细介绍了冒泡排序算法的工作原理及实现过程。通过具体的数值示例展示了如何逐步将数组中的元素按升序排列,并提供了完整的 C 语言实现代码。

被折叠的 条评论
为什么被折叠?



