冒泡選擇排序

2021-10-08 06:55:40 字數 1020 閱讀 3579

陣列排序

冒牌排序

原理:1.從尾部開始比較相鄰的兩個元素,如果尾部的元素比前面的大,就交換兩個元素的位置。

2.往前對每個相鄰的元素都做這樣的比較、交換操作,這樣到陣列頭部時,第 1 個元素會成為最大的元素。

3.重新從尾部開始第 1、2 步的操作,除了在這之前頭部已經排好的元素。

4.繼續對越來越少的資料進行比較、交換操作,直到沒有可比較的資料為止,排序完成。

int

arr=

;for

(int i =

0; i < arr.length; i++)}

}//遍歷排序後的陣列

for(

int i =

0; i < arr.length; i++

)

總結:這個演算法讓我想起了小時候在操場排隊跑步,老師總是說:「高的站前面,低的站後面」。我們一開始並不一定會站到準確的位置上,接著老師又說:「你比前面的高,和前面的換換,還高,再和前面換換」,就這樣找到了自己的位置。

選擇排序

原理:是一種簡單直觀的排序演算法。它的工作原理:首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然後,再從剩餘未排序元素中繼續尋找最小(大)元素,然後放到已排序序列的末尾。以此類推,直到所有元素均排序完畢。

int

arr=

;for

(int i =

0; i < arr.length; i++)}

//交換位置,以此類推最小(大)的,會繼續排序

arr[index]

=arr[i]

; arr[i]

=min;

}//排序後的遍歷

for(

int i : arr)

————————————————

[新增鏈結描述]

總結:就像學校公升旗站隊從低到高,每一次排序把最低(高)的喊出來依次排序

氣泡排序 選擇排序

這兩個排序的演算法 都是我從乙個叫太陽落雨的部落格上找來的,我放到我自己部落格,也只是為了把兩個排序演算法放一起方便,順便自己記憶,沒有抄襲的意思。一 演算法思想 氣泡排序便是指把陣列中的乙個數與其下乙個數進行比較,小的往前挪乙個位置,進行幾趟比較得到最終結果。而插入排序便是指先把第乙個數定為最小數...

選擇排序,氣泡排序

程式設計實現兩個排序演算法 選擇排序,氣泡排序 要求用函式實現排序演算法,主函式中呼叫。待排序資料用隨機數產生 這個過程建議也用乙個函式實現。include using namespace std include include 氣泡排序 void bubblesort int r,int n co...

氣泡排序 選擇排序

氣泡排序 它的內層迴圈保證遍歷一次後,集合中最小 大 元素出現在它的正確位置,下一次就是次小 大 元素。該方法在集合分布的各種情況下交換移動的次數基本不變,屬於最慢的一種排序。實現是雙重迴圈控制。這種排序法屬於過江龍,就是要找到極端,但是過獎龍也有大哥,二哥等,所以他們只能是大哥挑了二哥挑.處理 如...