選擇排序和氣泡排序方法以及區別

2021-08-17 21:12:33 字數 701 閱讀 8469

我來講講我學習選擇排序和氣泡排序的一些心得體會,這兩個方法都可以排序,看起來也有點相似,容易搞混,其實區別也是比較明顯的。

選擇排序通俗點說就是一列數中,用第乙個位置的數和後面位置的數依次去比較。如果從大到小排序就是第一位置的數和後面的依次比較,例如第一位置的數大於第二位置,那麼不交換位置,第一位置繼續和第三位置比較,如果第三位置的數大於第一位置,那麼第三位置的數就到了第一位置,第一位置的數到了第三位置,然後用第一位置新的數去和後面繼續比較,以此類推,第一位置和後面比較完後第二位置繼續和後面比較,**可以表示為:

for(

inti=

0; i1

; i++) }}

氣泡排序是第一位置的數和第二位置的數比較然後第二位置的數和第三位置的比較以此類推。舉個例子,有四個數:4,6,3,5。把這四個數從小到大排序,就是首先第一位置的4與第二位置的6比較,4<6所以不需要交換位置。6再與3比較,6>3,交換位置,6再與5比較,6>5,所以6到了最後面也就是最大的數。下面第二輪第一位置的數繼續重複上一輪操作,但是不需要與最後已經確定位置的6比較。**表示為:

for(

inti=

0; i1

; i++) }}

至於選擇排序和氣泡排序的區別,我認為就在於選擇排序是先確定前面的數,氣泡排序是確定後面的數。其中排序過程中,選擇排序是用乙個數去和後面比較,氣泡排序是相鄰的兩個數比較。作為乙個菜鳥新手,有錯誤希望大家勿怪,並指導一下。

氣泡排序和選擇排序區別

氣泡排序法 相鄰元素兩兩比較,大的往後放,第一次完畢,最大值出現在了最大索引處 分析 第一次比較排序的結果 會把其中最大的資料排到最大的索引處 第二次比較排序後的結果 因為第一次已經把最大的乙個資料放到了最大的索引的地方,所以這次要進行比較的資料比陣列裡面的元素的資料個數 1個,而第二大的資料也會排...

氣泡排序和選擇排序區別

原理上 冒泡是兩兩相鄰的比較,遇到最大的就交換,把最大的沉到後面。選擇排序是假設第乙個為最小,然後不斷和後面的進行比較,遇到更小的就交換位置,把最小的換到前面。author zzk coding utf 8 氣泡排序 data set 9,1,22,31,45,3,6,2,11 for i in r...

氣泡排序和選擇排序的區別?

在一次寫選擇排序演算法的時候,發現和冒泡沒啥區別,後來發現寫錯了,寫的就是冒泡而非選擇。先看一下期初的 templatevectorselectionsort vector arr return arr 再看一下冒泡 2.氣泡排序 templatevectorbubblesort vector ar...