冒泡重複地走訪過要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。走訪數列的工作是重複地進行直到沒有再需要交換,也就是說該數列已經排序完成。
#氣泡排序
defbubble_sort
(lists):
count=len(lists)
for i in range(0,count):
for j in range(i+1,count):
if lists[i]>lists[j]:
lists[i],lists[j]=lists[j],lists[i]
print(lists)
return lists
if __name__=="__main__":
lists=[3,2,1,5,4,3]
print(u'氣泡排序')
bubble_sorted=bubble_sort(lists)
print(bubble_sorted)
本文參考自 用Python實現八大排序演算法 快速排序
一 概述 最近在用python學習經典的8大排序演算法,以鞏固基礎知識,同時強化自己的python技能。下面對快速排序做乙個簡要介紹。快速排序 設要排序的陣列是a 0 a n 1 首先任意選取乙個資料 通常選用陣列的第乙個數 作為關鍵資料,然後將所有比它小的數都放到它前面,所有比它大的數都放到它後面...
用Python實現八大排序演算法 堆排序
1.堆是一種資料結構 可以將堆看作一棵完全二叉樹,這棵二叉樹滿足,任何乙個非葉節點的值都不大於 或不小於 其左右孩子節點的值。2.堆的儲存 一般用陣列來表示堆,若根節點存在於序號0處,i結點的父結點下表就為 i 1 2,i結點的左右子結點下標分別為2i 1和2i 2 3.堆排序思想 利用大頂堆 小頂...
八大排序演算法python實現
1.氣泡排序 氣泡排序重複地走訪過要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。走訪數列的工作是重複地進行直到沒有再需要交換,也就是說該數列已經排序完成。這個演算法的名字由來是因為越大的元素會經由交換慢慢 浮 到數列的頂端,故名。步驟 比較相鄰的元素。如果第乙個比第二個大,就交...