假设有这些数: 75 62 81 23 71 89 25 实现: 从小到大排序
冒泡排序
原理:每次两个数进行比较,从数组的前两个元素开始,如果前面的数 > 后面的数,就交换
第一趟会求出一个最大值,并且放在最后面,
然后 依此类推,经过最多N-1趟,排好序
62 75 23 71 81 25 89
62 23 71 75 25 81
23 62 71 25 75
23 62 25 71
23 25 62
23 25
经过 n - 1轮,每轮比较(n - i - 1)次
#include <stdio.h> int main() { int a[7] = {75, 62, 81, 23, 71, 89, 25}; int i, j; for(i = 0; i < 7 - 1; i++) { for(j = 0; j < 7 - i - 1; j++) { if(a[j] > a[j + 1]) { int t; t = a[j]; a[j] = a[j + 1]; a[j + 1] = t; } } } for(i = 0; i < 7; i++) printf("%d\n", a[i]); }
浙公网安备 33010602011771号