陣列的幾種排序方法

2021-08-07 18:14:13 字數 1008 閱讀 1361

排序就是把亂序的陣列從小到大(從大到小)進行排序,這裡給大家介紹一下最常見的三種排序方法。

選擇排序

選擇排序(selection sort)是一種簡單直觀的排序演算法。它的工作原理是每一次從待排序的資料元素中選出最小(或最大)的乙個元素,存放在序列的起始位置,直到全部待排序的資料元素排完。**實現如下:

for(int i=0;ilength-1;i++)

}}

氣泡排序

氣泡排序(bubblesort)的基本概念是:依次比較相鄰的兩個數,將小數放在前面,大數放在後面。即首先比較第1個和第2個數,將小數放前,大數放後。然後比較第2個數和第3個數,將小數放前,大數放後,如此繼續,直至比較最後兩個數,將小數放前,大數放後。重複以上過程,仍從第一對數開始比較(因為可能由於第2個數和第3個數的交換,使得第1個數不再小於第2個數),將小數放前,大數放後,一直比較到最大數前的一對相鄰數,將小數放前,大數放後,第二趟結束,在倒數第二個數中得到乙個新的最大數。如此下去,直至最終完成排序。**實現如下:

for(int i=0;ilength-1;i++)

}}

插入排序

插入排序就是把一組數字分成兩部分,一部分是排好順序的,另一部分是沒有排好順序的,然後,就是從沒有排好順序的那組數字中獲取數字,把它插入到已經排好的順序的那部分數字中,當然,在插入到已經排好順序的那部分數字時,你還必須讓這個插入進來的數字與已經排好順序的數字進行比較,為的是保證已經排好的順序的那部分數字不被打亂,插入排序的關鍵也就是這裡,如果能夠理解這裡,我想對於接下來我寫的**應該不難理解了。**實現如下:

for (int i = 1; i < arr.length; i++) else

}}

陣列的幾種排序方法

1.陣列的氣泡排序 演算法思想 遍歷待排序的陣列,每次遍歷比較相鄰的兩個元素,如果他們的排列順序錯誤就交換他們的位置,經過一次排序後,最大的元素會浮至陣列的末端,重複操作,直到排序完成 例如比較 進行比較 第一次 j 0 8 10 9 50 20 15 j 1 8 9 10 50 20 15 j 2...

陣列排序的幾種方法

演算法步驟 比較相鄰的元素。如果第乙個比第二個大,就交換他們兩個。對每一對相鄰元素作同樣的工作,從開始第一對到結尾的最後一對。這步做完後,最後的元素會是最大的數。針對所有的元素重複以上的步驟,除了最後乙個。持續每次對越來越少的元素重複上面的步驟,直到沒有任何一對數字需要比較。氣泡排序 functio...

幾種常見的陣列排序方法

廢話不多說,如下,基本的解釋也有 using system using system.collections.generic using system.linq using system.text namespace suanfa sort ints print ints int ints2 sor...