在學習新技術的同時,我們還應該時刻復習自己已學過的數據結構和經典算法。
一、最簡單的排序方法是冒泡排序方法。這種方法的基本思想是,將待排序的元素看作是豎著排列的“氣泡”,較小的元素比較輕,從而要往上浮。在冒泡排序算法中我們要對這個“氣泡”序列處理若干遍。所謂一遍處理,就是自底向上檢查一遍這個序列,并時刻注意兩個相鄰的元素的順序是否正確。如果發現兩個相鄰元素的順序不對,即“輕”的元素在下面,就交換它們的位置。顯然,處理一遍之后,“最輕”的元素就浮到了最高位置;處理二遍之后,“次輕”的元素就浮到了次高位置。在作第二遍處理時,由于最高位置上的元素已是“最輕”元素,所以不必檢查。一般地,第i遍處理時,不必檢查第i高位置以上的元素,因為經過前面i-1遍的處理,它們已正確地排好序。時間復雜度 o(n^2);空間復雜度 o(1);比較次數 n(n+1)/2
代碼:(vs2005中編譯通過)
View Code 1 public static int[] SortIntArray(int[] array)
2 {
3 int temp=0;
4 for (int i = 0; i < array.Length; i++)
5 {
6 for (int j = i+1; j < array.Length; j++)
7 {
8 if (array[i] > array[j])
9 {
10 temp = array[i];
11 array[i] = array[j];
12 array[j] = temp;
13 }
14 }
15 }
16 return array;
17 }
2 {
3 int temp=0;
4 for (int i = 0; i < array.Length; i++)
5 {
6 for (int j = i+1; j < array.Length; j++)
7 {
8 if (array[i] > array[j])
9 {
10 temp = array[i];
11 array[i] = array[j];
12 array[j] = temp;
13 }
14 }
15 }
16 return array;
17 }

浙公網安備 33010602011771號