python中對列表元素大小排序(冒泡排序法和選擇排序法)


前言:
排序(Sorting) 是計算機程序設計中的一種重要操作,它的功能是將一個數據元素(或記錄)的任意序列,
重新排列成一個關鍵字有序的序列。本文主要講述python中經常用的兩種排序算法,選擇排序法和冒泡排序
法及其區別。
通過對列表里的元素大小排序進行闡述。


一,選擇排序法
  • 從第一個位置開始比較,找出最小的,和第一個位置互換,開始下一輪。
lt = [3, 5, 2, 1, 8, 4]
#求出lt的長度
n = len(lt)
#外層循環確定比較的輪數,x是下標,lt[x]在外層循環中代表lt中所有元素
for x in range(n-1):
   #內層循環開始比較
   for y in range(x+1,n):
      #lt[x]在for y 循環中是代表特定的元素,lt [y]代表任意一個lt任意一個元素。
      if lt[x]>lt[y]:
         #讓lt[x]和lt列表中每一個元素比較,找出小的
         lt[x],lt[y]=lt[y],lt[x]
print(lt)

 



二,冒泡排序法排序
  • 從左到右,數組中相鄰的兩個元素進行比較,將較大的放到后面。
 
        
lt = [3, 5, 2, 1, 8, 4]
n= len(lt)
for x in range(n-1):
   for y in range(n-1-x):
      if lt[y]>lt[y+1]:
         lt[y],lt[y+1]=lt[y+1],lt[y]
print(lt)
 
        

 選擇排序法和冒泡排序法的區別:

  • 冒泡排序是比較相鄰位置的兩個數,而選擇排序是按順序比較,找最大值或者最小值;
  • 冒泡排序每一輪比較后,位置不對都需要換位置,選擇排序每一輪比較都只需要換一次位置;
  • 冒泡排序是通過數去找位置,選擇排序是給定位置去找數;
 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM