您好,登錄后才能下訂單哦!
這篇文章主要介紹“php冒泡排序如何實(shí)現(xiàn)”的相關(guān)知識(shí),小編通過(guò)實(shí)際案例向大家展示操作過(guò)程,操作方法簡(jiǎn)單快捷,實(shí)用性強(qiáng),希望這篇“php冒泡排序如何實(shí)現(xiàn)”文章能幫助大家解決問(wèn)題。
冒泡排序概念
php冒泡排序法是計(jì)算機(jī)中的一種簡(jiǎn)單的排序算法。在對(duì)數(shù)組排序時(shí)會(huì)根據(jù)數(shù)組的長(zhǎng)度重復(fù)的去比較數(shù)組中的值,如果順序不對(duì)就把兩個(gè)數(shù)據(jù)位置進(jìn)行對(duì)調(diào),一直比較到?jīng)]有需要交換的值為止完成排序。
冒泡排序原理
(1)比較相鄰的元素。如果第一個(gè)比第二個(gè)大,就交換他們兩個(gè)。
(2)對(duì)每一對(duì)相鄰元素做同樣的工作,從開(kāi)始第一對(duì)到結(jié)尾的最后一對(duì)。在這一點(diǎn),最后的元素應(yīng)該會(huì)是數(shù)。
(3)針對(duì)所有的元素重復(fù)以上的步驟,除了最后一個(gè)。
(4)持續(xù)每次對(duì)越來(lái)越少的元素重復(fù)上面的步驟,直到?jīng)]有任何一對(duì)數(shù)字需要比較。
實(shí)例
<?php /* * 思路: * 它重復(fù)地走訪過(guò)要排序的數(shù)列,一次比較兩個(gè)元素,如果他們的順序錯(cuò)誤就把他們交換過(guò)來(lái)。 * 走訪數(shù)列的工作是重復(fù)地進(jìn)行直到?jīng)]有再需要交換,也就是說(shuō)該數(shù)列已經(jīng)排序完成。 */ function BubbleSort($arr){ $count = count($arr); $temp = 0; //外層控制排序輪次 for($i=0; $i<$count-1; $i++){ //內(nèi)層控制每輪比較次數(shù) for($j=0; $j< $count-1-$i; $j++){ if($arr[$j] > $arr[$j+1]){ $temp = $arr[$j]; $arr[$j] = $arr[$j+1]; $arr[$j+1] = $temp; } } } return $arr; } $arr= array(6,3,8,2,9,1); $res = BubbleSort($arr); var_dump($res);
關(guān)于“php冒泡排序如何實(shí)現(xiàn)”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí),可以關(guān)注億速云行業(yè)資訊頻道,小編每天都會(huì)為大家更新不同的知識(shí)點(diǎn)。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。