日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

经典排序算法python回顾之一 交换排序

發布時間:2025/7/14 python 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 经典排序算法python回顾之一 交换排序 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

2019獨角獸企業重金招聘Python工程師標準>>>

冒泡排序:

簡介

有一列無序的氣泡,比較第一個和第二個氣泡的大小;如果第二個氣泡大,次序不做調整;如果第一個氣泡比較大,將這個兩個氣泡交換位置。
然后接著比較經過上面處理后氣泡序列的第二個與第三個氣泡,策略同上。
一直這樣處理下去,處理完最后一對氣泡的時候,整個序列中最大的氣泡將交換到最后的位置。

同樣的策略處理剩下的n-1個氣泡,這樣次大的氣泡將排在倒數第二位...最后得到由大至小的有序序列。

最優時間復雜度O(n),最差時間復雜度O(n^2),平均時間復雜度O(n^2).

python代碼

def bubble_sort(List):for j in range(len(List)-1,0,-1):for i in range(0,j):if List[i]>List[i+1]:List[i],List[i+1]=List[i+1],List[i]return List


快速排序:

簡介

在無序數列中,先任選一個作為基準,然后將這些無序的數遍歷,比此基準小的放到基準之前,比基準大的放到之后,如此便將數列利用基準分割成兩部分。

在得到的兩部分無序數列中,遞歸調用上面策略,最后將得到有序數列。

最優時間復雜度O(nlogn),最差時間復雜度O(n^2),平均時間復雜度O(nlogn).

python代碼

def qsort(L): if len(L) <= 1:return L return qsort([lt for lt in L[1:] if lt < L[0]]) + L[0:1] + \ qsort([ge for ge in L[1:] if ge >= L[0]])

轉載于:https://my.oschina.net/vincent67/blog/185681

總結

以上是生活随笔為你收集整理的经典排序算法python回顾之一 交换排序的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。