c#基础--冒泡排序
冒泡排序:
让数组中的元素两两比较(第i个与第i+1个比较),经过n(i-1)遍两两比较,数组中的元素能按照我们预期的规律排序。
要从大到小排序,我们进行两两比较的时候用“<”
要从小到大排序,我们进行两两比较的时候用“>”
第i个与第i+1个比较,满足条件时,两数交换值
例:有如下数据
10,20,30,40,50,60,70 原始数据7个元素
20,30,40,50,60,70,10 第一趟 比较了6次 最小的数已跑到最后位
30,40,50,60,70,20,10 第二趟 比较了5次
40,50,60,70,30,20,10 第三趟 比较了4次
50,60,70,40,30,20,10 第四趟 比较了3次
60,70,50,40,30,20,10 第五趟 比较了2次
70,60,50,40,30,20,10 第六趟 比较了1次
规律:n个数需要比较n-1趟
第i趟比较的次数为:n-i次
代码如下:
//将数组中的数值按照从大到小排序
int[] arrTemp = {12,43,62,13,1,23,56,99,36,21,44 };
for (int i = 0; i < arrTemp.Length-1; i++)//控制排序的趟数
{
for (int j = 0; j < arrTemp.Length - i - 1; j++)
{
if (arrTemp[j] < arrTemp[j + 1])
{
int temp = arrTemp[j];
arrTemp[j]= arrTemp[j+1];
arrTemp[j + 1] = temp;
}
}
}
浙公网安备 33010602011771号