基础复习之[冒泡排序]
public static void BubbleSort(int[] arr) { int i, j, temp; //交换标志 bool exchange; for (i = 0; i < arr.Length; i ) //最多做arr.Length-1趟排序 { exchange = false; //本趟排序开始前,交换标志应为假 for (j = arr.Length - 2; j >= i; j--) { if (arr[j 1] < arr[j]) //交换条件 { temp = arr[j 1]; arr[j 1] = arr[j]; arr[j] = temp; exchange = true; //发生了交换,故将交换标志置为真 } } if (!exchange) //本趟排序未发生交换,提前终止算法 { break; } } }
演示: