Python函式之冒泡演算法

2022-08-17 16:51:19 字數 669 閱讀 7215

1、

data = [4,3,2,1]

count =0

for i in

range(0, len(data)):

#len(data)代表的是列表的總長度

#取外層函式的第乙個值進行迴圈

for j in range(i + 1, len(data)):

#把外層迴圈的第乙個值跟所有的內層迴圈的值比較一遍,並跟換位置,沉低

count += 1

if data[j] tmp =data[j]

data[j] =data[i]

data[i] =tmp

#count += 1

print(data, "

次數是", count)

2、

data = [4,3,2,1]

count =0

for j in range(1, len(data)):

#count += 1

for i in range(len(data)-j):

count += 1

if data[i] > data[i + 1]:

tmp =data[i]

data[i] = data[i + 1]

data[i+1] =tmp

print(data)

Python排序演算法之氣泡排序

顧名思義,氣泡排序直觀的意思是氣泡越大冒的越快 對應到我們的列表中就是數字最大的先選出來,然後依次進行。例如 mylist 1,4,5,0,6 比較方式為 相鄰的兩個數字先進行比較,也就是mylist 0 和mylist 1 發現不是 的關係,就繼續比較mylist 1 和mylist 2 依次進行...

排序演算法之python氣泡排序

氣泡排序是一種交換排序 比較相鄰的連個關鍵字,把大的往後放,小的就向前移動,即冒泡 def bubblesort input list 如果待排序列為空,則直接返回空列表 if len input list 0 return sorted list input list for i in range...

排序演算法(python) 之 氣泡排序

比較相鄰的兩個元素,若前乙個大於後乙個則交換 對每一對相鄰元素進行比較,直至最後一對元素。重複上述步驟,知道排序完成。這為向上冒泡。向下冒泡同理。1 向上冒泡 m input split n int m i for i in range len m 輸入的陣列 for i in range len ...