陣列的常見排序演算法 氣泡排序,選擇排序

2021-08-31 11:32:52 字數 1646 閱讀 2628

2.選擇排序演算法

程式設計中,我們會經常用到陣列的排序,方便統計和查詢。當然面試的時候也會經常問到

下面是兩種比較常見的排序。

比較相鄰的兩個值,如果滿足條件就交換值,把小的值移到陣列前面,大的移動到後面

public

class

arraysortbubble

;//建立陣列

system.out.

println

("排序前輸出:"

+arrays.

tostring

(array));

sort

(array)

;//呼叫排序演算法

system.out.

println

("排序後輸出:"

+arrays.

tostring

(array));

}/**

* 氣泡排序演算法

* @param array

* @return

*/public

static int[

]sort

(int[

] array)}}

return array;

}}

輸出結果:

將指定排序位置與其他陣列元素分別對比,滿足條件就交換元素值,每次比較選擇出最大(或者最小)的元素,直到全部排序完成。

public

class

arrayselectsort

; system.out.

println

("選擇排序前:"

+ arrays.

tostring

(array));

sort

(array)

; system.out.

println

("選擇排序後:"

+ arrays.

tostring

(array));

}/**

* 直接選擇排序

* @param array 要排序的陣列

* @return

*/public

static int[

]sort

(int[

] array)

}//交換在位置array.length-1和index(最大值)上的兩個數

int temp = array[array.length - i]

;//最後乙個元素值儲存到臨時變數

array[array.length - i]

= array[index]

;//將大的元素值往後移

array[index]

= temp;

//臨時變數複製到交換的變數

}return array;

}}

輸出結果:

常見的排序演算法 (冒泡 選擇排序)(Java版)

1.氣泡排序 演算法原理 比較相鄰的元素,若第乙個元素大於第二個元素,就交換它們倆個元素。讓每一對相鄰的元素都做相同的步驟,最後得到最後得元素為最大值。重複上述的步驟。package my public class bubblesort sort sort new sort sort.bubble ...

排序演算法 氣泡排序 選擇排序

1 氣泡排序 這個氣泡排序的原理就像水裡的魚吐泡泡一樣,起初是小一點的泡泡,然後越來越大,最後的最大。演算法描述 1 設待排序序列中的記錄的數為n 2 一般的,第i趟起泡排序從1到n i 1 3 依次比較相鄰兩個記錄的數字,如果發生逆序,則交換 4 其結果是這n i 1個記錄中,關鍵字最大的記錄被交...

排序演算法 冒泡 選擇排序

思路 1.從頭開始比較每一對相臨的元素,其後者比前者大則交換,直到一輪比較結束 2.排除1中找到最大的元素,重複1的步驟 class bubblesort 如果在某一趟比較後,序列就變得完全有序,此時就沒有必要再繼續比較下去 func sort2 if sorted 如果數列在尾部已經有序 部分有序...