氣泡排序的思想 python 氣泡排序 遞迴排序

2022-03-31 12:17:55 字數 1031 閱讀 4951

氣泡排序的思想: 每次比較兩個相鄰的元素, 如果他們的順序錯誤就把他們交換位置

比如有五個數: 12, 35, 99, 18, 76, 從大到小排序, 對相鄰的兩位進行比較

經過第一趟比較後, 五個數中最小的數已經在最後面了, 接下來只比較前四個數, 依次類推

氣泡排序原理: 每一趟只能將乙個數歸位, 如果有n個數進行排序,只需將n-1個數歸位, 也就是說要進行n-1趟操作(已經歸位的數不用再比較)

#

!/usr/bin/env python

#coding:utf-8

defbubblesort(nums):

for i in range(len(nums)-1): #

這個迴圈負責設定氣泡排序進行的次數

for j in range(len(nums)-i-1): #

j為列表下標

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

nums[j], nums[j+1] = nums[j+1], nums[j]

return

nums

nums = [5,2,45,6,8,2,1]

print bubblesort(nums)

缺點: 氣泡排序解決了桶排序浪費空間的問題, 但是氣泡排序的效率特別低

來自:遞迴排序:

def func(lt=):

if len(lt)<=1:

return lt

key = lt[0]

lt_l =

lt_r =

lt_m =

for i in lt:

if i < key:

elif i > key:

else:

lt_l = func(lt_l)

lt_r = func(lt_r)

return lt_l+lt_m+lt_r

lt = [12,34,2,5,8,9,1,6]

print(func(lt))

氣泡排序演算法思想

冒泡思想 就是通過兩兩比較a,b,如果a比b大,就把a的位置跟b交換,接著比下去,直到最大的元素出現在最後的位置。package sort 氣泡排序思想 1 比較最開始相鄰的元素 如果這個元素大就往後移,2 接著比較下一組元素直到該元素到了最後 3 接著重複操作 4 直到元素排好序 public c...

冒泡的思想

氣泡排序的思想 相鄰的兩個數 小 大,大 小 進行排序 我們可以通過乙個例項來看下,冒泡的思想 list1 13,56,78,35 13,56,78,35 56,13,78,35 56,78,13,35 56,78,35,13 78,56,35,13 78,56,35,13 78,56,35,13 ...

氣泡排序基本思想

原理 比較兩個相鄰的元素,將值大的元素交換至右端。每次獲得 最大 的數 思路 依次比較相鄰的兩個數,將小數放在前面,大數放在後面。即在第一趟 首先比較第1個和第2個數,將小數放前,大數放後。然後比較第2個數和第3個數,將小數放前,大數放後,如此繼續,直至比較最後兩個數,將小數放前,大數放後。重複第一...