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

2021-10-16 01:11:54 字數 1211 閱讀 1303

二、**選擇排序

三、py**實現選擇排序演算法

從第乙個數開始計數基準(為最小值),記錄下標

迴圈比較後面的數,記錄比基準小的數的下標,直到最後乙個數比較後,將當前最小值下標與基準替換

從下標為第幾次迴圈開始繼續1,2操作,直到迴圈列表長度-1的次數為止

關鍵**:

def

select_sort

(arr)

:""" 選擇排序:先將第一次選擇為最小的乙個 然後對後面的所有進行選擇,將最小的放入前面

:param arr: 需要排序的陣列

"""iflen

(arr)

<=1:

return

# 最小值從第乙個開始

i =0# 外迴圈控制迴圈的次數 每一次迴圈結束,最小的數在最前面

while i <

len(arr)

:# 從第二個開始比較

j = i +

1# 當前最小值下標

minindex = i

# 內迴圈控制比較的次數

while j <

len(arr)

:# 如果當前比較值比最小值小 就記住當前下標為最小值下標

if arr[j]

< arr[minindex]

: minindex = j

j +=

1# 將當前最小值替換當前面

temp = arr[i]

arr[i]

= arr[minindex]

arr[minindex]

= temp

i +=

1

執行:

# 定義乙個列表

arr =[2

,3,1

,5,10

,6,3

,4,8

]print

(arr)

select_sort(arr)

print

(arr)

列印結果:

[2, 3, 1, 5, 10, 6, 3, 4, 8]

[1, 2, 3, 3, 4, 5, 6, 8, 10]

python模組學習 pickle庫學習實錄

pickle模組簡介 pickle模組可以將記憶體中的python物件轉化成序列化的位元組流,這是一種可以寫入任何類似檔案物件的位元組串。pickle模組也可以根據序列化的位元組流重新構建原來記憶體中的物件 轉換成原來那個物件。mark lutz pickle模組可以有效地解決構建資料庫的問題,下面...

機器學習 softmax回歸 python實現

恢復內容開始 softmax regression 可以看做是 lr 演算法在多分類上的推廣,即類標籤 y 的取值大於或者等於 2。假設資料樣本集為 left y right left x y right left x y right left x y right right 對於 sr 演算法,其...

python實訓成果 python實訓第一天

實訓第一天總結 常量 常量也是變數,在python中大家都規定只要是大寫的變數都稱之為常量 使用者與程式互動 數字型別 整型int 浮點型 float 字串型別 列表型別 字典型別 在 內,都逗號隔開,可存放多個值,每個值以key value的形式儲存 存 dict1 取 print dict1 n...