Python 實現的氣泡排序

2021-07-02 19:25:39 字數 758 閱讀 1587

氣泡排序屬交換排序, 最簡單的一種排序演算法

排序思路:

n為陣列長度,經過n趟比較,每趟比較相鄰的兩元素,將較大元素放到最後,當有一趟比較中沒有交換時退出

import util

#氣泡排序

class bubblesort:

def sort(self,arrdata):

length = len(arrdata);

for i in range(0,length):

isnoswap = true;

for j in range(0,length - i - 1):

if arrdata[j] > arrdata[j + 1]:

isnoswap = false;

util.swap(arrdata,j,j+1);

if isnoswap:

break;

arr = [7,2,5,3,1,8,6,100,48,38,45,20,34,67,12,23,90,58];

#[3, 1, 7, 5, 6, 8, 12, 2];

#[7,2,5,3,1,8,6,100,48,38,45,20,34,67,12,23,90,58];

print(arr);

busort = bubblesort();

busort.sort(arr);

print(arr);

氣泡排序的時間複雜度較差,為o(n2),空間複雜度為o(1)

氣泡排序的Python實現

最近被考到乙個簡單演算法 氣泡排序,彷彿是大三的時候學過,大概原理還記得一點,現在除錯了一下把完整 寫出來了,記錄一下。usr bin env python coding utf 8 def bubble sort list len of list len list while len of lis...

python氣泡排序的實現

usr bin env python coding utf 8 author richard kong 氣泡排序 是一種簡單的排序演算法。它重複的遍歷要排序的數列,一次比較量兩個元素,如果他們的順序錯誤就把他們的順序交換過來。遍歷數列的工作時重複的進行直到沒有再需要交換,也就是說該數列已經排序完成。...

氣泡排序(python實現)

coding utf 8 created on tue jul 4 11 37 19 2017 data list cnt num all 0 def data in func data list,cnt num all while true judge continue input 請選擇是輸入資...