當前位置:
首頁 > 知識 > Python演算法實戰:冒泡

Python演算法實戰:冒泡

來源:https://blog.ansheng.me/article/python-full-stack-way-digital-datda-type/

冒泡演算法即冒泡排序,其目的就是為一個無序的列表排成有序的,從大到小或從小到大都可以

題外話

變數位置的互換

假設現在有兩個變數a1與a2:

如何調換這兩個變數的位置,即結果就是讓 , ?

解:添加一個中間變數temp,其過程如下:

輸出結果為:

列表位置的互換

現在有一個列表 ,內容為:

現需要把 列表中的第一個位置元素與第二個位置元素互換,其解決方法就可以引用一個中間變數 :

輸出結果:

圖解運作原理

列表內容為:

文字描述

比較相鄰的元素,如果第一個比第二個大,就交換他們兩個的位置。

對每一對相鄰元素作同樣的工作,從開始第一對到結尾的最後一對,這步做完後,最後的元素會是最大的數。

針對所有的元素重複以上的步驟,除了最後一個,也就是每次比較之後最大的書不做任何操作。

持續每次對越來越少的元素重複上面的步驟,直到沒有任何一對數字需要比較。

代碼實現

輸出結果:

點擊展開全文

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 Python 的精彩文章:

Python 演算法實戰系列:棧
Selenium中級篇之10-Python中的繼承的使用
用 Python 寫一個 NoSQL 資料庫
中級篇之8-Python自定義封裝一個簡單的Log類
Selenium中級篇之7-Python中字元串切割操作

TAG:Python |

您可能感興趣

Adaboost演算法及python實戰
MeanShift濾波演算法與實現
用Python 實現的機器人演算法示例集合——PythonRobotics
Python LZW 演算法
iPhone Xs 使用感測器測量深度,而 iPhone X?是通過演算法實現
用 Python 實現所有演算法!Github 星標近 5w
Tamar Charney:重視演算法的力量
Bayesian Personalized Ranking 演算法解析及Python實現
Facebook開源「Detectron」,用於AR研究的計算機視覺演算法!
演算法:Sums In A Triangle
演算法基礎:五大排序演算法Python實戰教程
長文詳解自然語言處理演算法xgboost和python實戰
使用Caicloud TaaS 平台落地深度學習演算法實戰
加速AR對象分類,Facebook開源計算機視覺演算法Detectron
又一公鏈採用Tensority演算法
Deep Forest 演算法解讀
人工智慧–Autoencoder演算法
使用DFA攻擊硬體的AES演算法,並從PlayStation Vita中提取硬體密鑰
Equihash演算法礦機 Z9 mini問世,又一個演算法被ASiC攻克!
CatBoost、LightGBM、XGBoost,這些演算法你都了解嗎?