搜尋
首頁php教程PHP开发C語言冒泡排序演算法及程式碼

C語言冒泡排序演算法及程式碼

Dec 19, 2016 pm 01:35 PM
冒泡排序

冒泡排序是排序演算法的一種,思路清晰,程式碼簡潔,常被用在大學生電腦課程。

「冒泡」這個名字的由來是因為越大的元素會經由交換慢慢「浮」到數列的頂端,故名。

這裡以從小到大排序為例進行講解。

基本思想及舉例說明

冒泡排序的基本思想就是不斷比較相鄰的兩個數,讓較大的元素不斷地往後移。經過一輪比較,就選出最大的數;經過第2輪比較,就選出次大的數,以此類推。

下面以對 3  2  4  1 進行冒泡排序說明。

第一輪排序過程
3  2  4  1    (最初)
2  3  4  2   (比較3和2,交換)   (比較4和1,交換)
第一輪結束,最大的數4已經在最後面,因此第二輪排序只需要對前面三個數進行再比較。

第二輪排序過程
2  3  1  4 (第一輪排序結果)
2  3  1  4 (比較2和3,不交換)
2  1  3  4 (比較2和3,不交換)
2  1  3  4 (比較23和1,交換第二個,第二大的數字已經排在倒數第二個位置,所以第三輪只需要比較前兩個元素。 4  (比較2和1,交換)
至此,排序結束。比較(R[1], R[2]),  (R[2], R[3]),  (R[3], R[4]),  …….  (R[N-1], R[ N]) ;  最大的元素會被移到R[N]上。 R[3], R[4]),  …….  (R[N-2], R[N-1]);第二大元素會被移到R[N-1]上。 。 。 N-1輪比較;而最佳化實現,在數組已經排序好的情況下,會提前退出比較,減小了算法的時間複雜度。及程式碼相關文章請關注PHP中文網!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 個月前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
1 個月前By尊渡假赌尊渡假赌尊渡假赌
威爾R.E.P.O.有交叉遊戲嗎?
1 個月前By尊渡假赌尊渡假赌尊渡假赌

熱工具

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )專業的PHP整合開發工具

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

將Eclipse與SAP NetWeaver應用伺服器整合。

SublimeText3 英文版

SublimeText3 英文版

推薦:為Win版本,支援程式碼提示!

Atom編輯器mac版下載

Atom編輯器mac版下載

最受歡迎的的開源編輯器

Dreamweaver Mac版

Dreamweaver Mac版

視覺化網頁開發工具