首頁  >  文章  >  後端開發  >  php怎麼實作冒泡排序演算法

php怎麼實作冒泡排序演算法

王林
王林原創
2021-09-26 16:21:5114744瀏覽

php實作冒泡排序演算法的方法:【for ($i=0 ; $i

php怎麼實作冒泡排序演算法

本文操作環境:windows10系統、php 7、thinkpad t480電腦。

在給具體的實作程式碼之前,我們先來簡單介紹下冒泡排序。

冒泡排序是比較簡單的排序演算法,它重複地走訪過要排序的元素列,一次比較兩個相鄰的元素,如果他們的順序(如從大到小、首字母從A到Z)錯誤就把他們交換過來。走訪元素的工作是重複地進行直到沒有相鄰元素需要交換,也就是說該元素已經排序完成。

接著我們來看下冒泡排序的原理:

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

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

針對所有的元素重複以上的步驟,除了最後一個。

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

最後我們來看下具體的實現代碼:

<?php
$arr = array(&#39;5&#39;,&#39;2&#39;,&#39;0&#39;,&#39;1&#39;,&#39;3&#39;,&#39;1&#39;,&#39;4&#39;);
 
function BubbleSort(array $arr)
{
 
	for ($i=0 ; $i <count($arr) ; $i++) { 
		//设置一个空变量
		$data = &#39;&#39;;
		for ($j=$i ; $j < count($arr)-1 ; $j++) { 
			if ($arr[$i] > $arr[$j+1]) {
 
				$data      = $arr[$i]; 
				$arr[$i]   = $arr[$j+1];
				$arr[$j+1] = $data; 
			}
		}
	}
 
	return $arr;
}
echo "<pre class="brush:php;toolbar:false">";
print_r(BubbleSort($arr));

#推薦學習:php培訓

########################################################

以上是php怎麼實作冒泡排序演算法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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