Python 程式進行選擇排序


在本文中,我們將學習選擇排序及其在 Python 3.x 或更早版本中的實現方式。

選擇排序演算法中,透過遞迴地從未排序部分中查詢最小元素並將其插入開頭,對陣列進行排序。在給定的陣列上執行選擇排序期間形成兩個子陣列。

  • 已排序的子陣列
  • 未排序的子陣列。

在選擇排序的每次迭代過程中,最小元素從未排序子陣列中彈出並插入到已排序子陣列中。

讓我們看看演算法的視覺化表示 −

現在讓我們看看演算法的實現方式 −

示例

 即時演示

A = ['t','u','t','o','r','i','a','l']
for i in range(len(A)):
   min_= i
   for j in range(i+1, len(A)):
      if A[min_] > A[j]:
         min_ = j
   #swap
A[i], A[min_] = A[min_], A[i]
# main
for i in range(len(A)):
   print(A[i])

輸出

a
i
l
o
r
t
t
u

在此,我們按升序從演算法中接收輸出。最小值是當前值,與其他所有值進行比較。演算法的分析引數如下 −

時間複雜度 − O(n^2)

輔助空間 − O(1)

這裡所有變數都宣告在全域性框架中,如下圖所示

結論

在本文中,我們學習了選擇排序及其在 Python 3.x 或更早版本中的實現方式。

更新於: 2019 年 9 月 11 日

2K+ 瀏覽次數

提升你的 職業

完成課程獲得認證

開始學習
廣告
© . All rights reserved.