基础复习之[冒泡排序]
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;
}
}
}
演示: