比较相邻的元素。如果第一个比第二个大,就交换他们两个。 (从后往前)
对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。
针对所有的元素重复以上的步骤,除了最后一个。
持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。
int[] a = new int[] { 0, 6, 9, 7, 3, 1, 2, 5 };
// 第一轮 0 6 7 3 1 2 5 9
//第二轮 0 6 3 1 2 5 7 9
//第三轮 0 3 1 2 5 6 7 9
for (int j = 0; j < a.Length; j++) {
for (int i = 0; i < a.Length-1; i++) {
if (a[i]<a[i+1]) {
//假如前一个大于后一个,那么两个值互换
c = a [i];
a [i] = a [i + 1];
a [i + 1] = c;
}
}
}
for (int p = 0; p < a.Length; p++) {
Console.WriteLine (a[p]);
}