1.简介:
在学习技能的过程中,没有哪一种技术是最好的!在不同的情况下,不同的技术会有不同优势!
冒泡排序的基本思想是:每次比较两个相邻元素,如果它们的顺序错误就把它们交换位置:
- 下面通过图简单来看看“冒泡排序”
所谓冒泡排序就是这样,小的数往上浮,大的数往下沉!
2.冒泡排序:
- 代码:
1 static void Main(string[] args) 2 { 3 int[] arr = { 1, 5, 2, 7, 3 }; 4 foreach (int item in bubble(arr)) 5 { 6 Console.WriteLine(item); 7 } 8 Console.ReadKey(); 9 }
10 public static int[] bubble(int[] arr) 11 { 12 int temp; //用于交换的临时变量 13 for (int i = 0; i < arr.Length-1; i++)//根据图1可知,一共比较N-1轮 14 for (int j = 1; j < arr.Length-i; j++)//由图1可知,每一轮比较之后,就可以少比较一次 15 { 16 if (arr[j - 1] > arr[j]) 17 { 18 temp = arr[j - 1]; 19 arr[j - 1] = arr[j]; 20 arr[j] = temp; 21 } 22 } 23 return arr; 24 }
- 冒泡比较次数图:
图1
在进行数据处理时,冒泡排序用的也是比较多的!接下来可以了解一下简单排序(之二)——(桶排序)