Python bubble sort 泡沫排序法

文章推薦指數: 80 %
投票人數:10人

本篇ShengYu 介紹排序法中最簡單經典的泡沫排序法bubble sort,並且由Python 來實作泡沫排序法bubble sort。

泡沫排序法bubble sort 基本原理泡沫排序 ... 2021-01-01 Python教學 本篇ShengYu介紹排序法中最簡單經典的泡沫排序法bubblesort,並且由Python來實作泡沫排序法bubblesort。

泡沫排序法bubblesort基本原理泡沫排序法bubblesort的原理是將兩個相鄰的數值相比,假如前一個數值比後一個數值大時,就互相對調,實作時就是使用兩層迴圈,針對該串列掃兩次,最終將能獲得排序好的升序串列(由小到大),讓我來舉個簡單的例子吧!假如今天有一串數字串列3,2,4,5,1要使用泡沫排序bubblesort, 第一次迴圈排序步驟如下,所以第一次迴圈就能把最大的數值5給交換到最後了,剩餘要排序的數值還有4個,12342,3,4,5,12,3,4,5,12,3,4,5,12,3,4,1,5 第二次迴圈排序步驟如下,第二次迴圈,就把第二大的數值4給交換到倒數第二個了,剩餘要排序的數值還有3個,1232,3,4,1,52,3,4,1,52,3,1,4,5 第三次迴圈排序步驟如下,第三次迴圈,就把第三大的數值3給交換到倒數第三個了,剩餘要排序的數值還有2個,122,3,1,4,52,1,3,4,5 第四次迴圈排序步驟如下,第四次迴圈,就把第三大的數值2給交換到倒數第四個了,剩餘要排序的數值還有1個,11,2,3,4,5 迴圈結束,排序完成, Python實作泡沫排序法bubblesort由上述的簡單例子推演可以了解了泡沫排序bubblesort基本原理後,接著就開始練習用Python來寫程式,那我們來看看Python泡沫排序怎麼寫吧!python3-bubble-sort.py12345678910111213141516#!/usr/bin/envpython3#-*-coding:utf-8-*-defbubble_sort(nums):n=len(nums)foriinrange(n-1):forjinrange(n-i-1):ifnums[j]>nums[j+1]:temp=nums[j]nums[j]=nums[j+1]nums[j+1]=tempnums=[3,2,4,5,1]print("排序前=%s"%nums)bubble_sort(nums)print("排序後=%s"%nums) Python程式跑出來的結果如下,經過泡沫排序法bubblesort排序後的結果的確是由小排到大。

12排序前=[3,2,4,5,1]排序後=[1,2,3,4,5] 下一篇介紹selectionsort選擇排序法 其它相關文章推薦C/C++bubblesort泡沫排序法Python新手入門教學懶人包Python寫檔,寫入txt文字檔Python讀取csv檔案Python寫入csv檔案Python讀寫檔案Python產生random隨機不重複的數字listPythonPyAutoGUI使用教學PythonOpenCVresize圖片縮放 Newer Pythonselectionsort選擇排序法 Older std::max用法與範例 精選文章 Python基礎教學目錄 C/C++入門教學目錄 Linux常用指令教學懶人包 最新文章 C/C++實作atoi的方法 VisualStudioCode存檔自動排版的2種方式 C/C++__FILENAME__macros巨集 C/C++strrchr用法與範例 C/C++strchr用法與範例 粉絲專頁 分類 Arduino4C/C++教學145Github13Git教學19OpenCV教學8Projects6Python教學224Qt教學7 首頁 Python教學 C/C++教學 歸檔 標籤 Projects 關於我



請為這篇文章評分?