冒泡排序
對於剛接觸程式設計和演算法的朋友來說,對於排序演算法可能不太清晰,接下來我們一起來分析下冒泡排序。
冒泡排序的原理是什麼了?
遍歷一個數組,在此過程中,將相鄰的兩個單元的值進行比較:如果前面的比後面的大,則將兩個值交換位置。這個過程到最後,數組中的最大值一定放在最後位置了。
如果將上述過程再進行一遍,則又可以確定剩餘資料中的最大值放在倒數第二的位置。
然後將上述過程繼續進行一遍,則可以繼續確定剩餘資料中的最大值放在倒數第三的位置。
依序類別推。 。 。 。 。
圖示:
原始陣列 |
18 | ##2212 | 23 | 9 | ||
18 | 12 | 15 | #9 | 23 | ||
18 | 22 | 12 | #9 | #15 | 23 | |
第三班 | 18 | #22 | #9 | 12 | 15 | 23 |
第四趟 | 18 | #9 | 12 | 15 | 22 |
23 |
#9
12
18
2223
#程式碼示範:######
$arr1 = array(18,22,12,15,23,9); $n = count($arr1); //控制要进行的躺数 for($i = 0;$i < $n-1;$i++){ //在每一趟里面,控制进行比较的次数 for($k = 0;$k < $n-1-$i;$k++){ if ($arr1[$k] > $arr1[$k+1]) { $temp = $arr1[$k]; $arr1[$k] = $arr1[$k+1]; $arr1[$k+1] = $temp; } } }###最後讓我們來總結規律:############1.要進行從頭到尾兩兩比較並進行交換位置的趟數為$n-1趟,$n是總個數(陣列長度) ############2.每次都對相鄰的兩個資料進行大小比較,如果需要,就交換他們的位置! ############3.每趟要比較的次數都比前一趟少1次,第一趟要比較的次數為:$n-1######
以上是冒泡排序詳細解析的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

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

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

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

SublimeText3 Linux新版
SublimeText3 Linux最新版

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

Atom編輯器mac版下載
最受歡迎的的開源編輯器

DVWA
Damn Vulnerable Web App (DVWA) 是一個PHP/MySQL的Web應用程序,非常容易受到攻擊。它的主要目標是成為安全專業人員在合法環境中測試自己的技能和工具的輔助工具,幫助Web開發人員更好地理解保護網路應用程式的過程,並幫助教師/學生在課堂環境中教授/學習Web應用程式安全性。 DVWA的目標是透過簡單直接的介面練習一些最常見的Web漏洞,難度各不相同。請注意,該軟體中

VSCode Windows 64位元 下載
微軟推出的免費、功能強大的一款IDE編輯器