Python學習 實現《選擇排序法》

2021-10-07 06:49:18 字數 987 閱讀 6014

有以下資料,請使用選擇排序法進行排序。

[99,2,4,56,8,22,5,34,10,5.5,6,-5.2,0,-1]

選擇排序法的排序思想:假設有n個需要排序的資料,排序步驟如下

step1:選擇第乙個資料作為比較物件,將它與它後面的(n-1)個資料進行比較,選擇出最大/最小的那個資料與第乙個進行交換,第一次內層迴圈結束。總比較次數為n-1次

step2:選擇第二個資料作為比較物件,將它與它後面的(n-2)個資料進行比較,選擇出最大/最小的那個資料與第乙個進行交換,第二次內層迴圈結束。總比較次數為n-2次

step3:…總比較次數為n-3次……

…stepn:…總比較次數為1次

list1=[99

,2,4

,56,8

,22,5

,34,10

,5.5,6

,-5.2,0,

-1]#選擇排序

def selection_sort

(arr)

: array=arr

maxnum=

len(array)

for i in

range(0

,maxnum)

:for j in

range

(i+1

,maxnum)

:if array[i]

>array[j]

: array[i]

,array[j]

=array[j]

,array[i]

return array

if __name__==

'__main__'

:print

("排序前:%s"

% list1)

print

("排序後:%s"

%selection_sort

(list1)

)

python學習 python實現選擇排序演算法

二 選擇排序 三 py 實現選擇排序演算法 從第乙個數開始計數基準 為最小值 記錄下標 迴圈比較後面的數,記錄比基準小的數的下標,直到最後乙個數比較後,將當前最小值下標與基準替換 從下標為第幾次迴圈開始繼續1,2操作,直到迴圈列表長度 1的次數為止 關鍵 def select sort arr 選擇...

C 實現選擇排序法

選擇排序法的思想是從待排序的序列中找到最小 若從大到小排序,則找最大值 值加入到有序序列中。基於這個思想,很容易實現其演算法。注意,選擇排序法不是一種穩定的排序法,其時間複雜度為o n2 include using namespace std void selectsort int a,int n ...

Python學習 實現《氣泡排序法》

演算法思想 step1 將第乙個資料和第二個進行比較,若第乙個資料大於第二的資料,則將第乙個資料 大數 和第二個資料 小數 交換位置。再將第二個資料和第三個比較,若第二個資料大於第三個資料,交換資料。依次類推,直到最大的數排到最後的位置上。第1個迴圈結束。step2 將第乙個資料和第二個進行比較,若...