冒泡排序(Bubble Sort)算法
冒泡排序算法的運做以下:spa
1.比較相鄰的元素。若是第一個比第二個大,就交換他們兩個。blog
2.對每一對相鄰元素做一樣的工做,從開始第一對到結尾的最後一對。在這一點,最後的元素應該會是最大的數。排序
3.針對全部的元素重複以上的步驟,除了最後一個。ci
4.持續每次對愈來愈少的元素重複上面的步驟,直到沒有任何一對數字須要比較。it
平均時間複雜度 | ![]() |
---|
/// <summary> /// 冒泡排序 /// </summary> /// <param name="arr"></param> /// <param name="count"></param> public static void BubbleSort(int[] arr, int count) { int i = count, j; int temp; while (i > 0) { for (j = 0; j < i - 1; j++) { if (arr[j] > arr[j + 1]) { temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; } } i--; } } //使用例子 int[] y = new int[] { 1, 32, 7, 2, 4, 6, 10, 8, 11, 12, 3, 9, 13, 5 }; BubbleSort(y, y.Length ); foreach (var item in y) { Console.Write(item+" "); } //1 2 3 4 5 6 7 8 9 10 11 12 13 32