php冒泡算法實(shí)現(xiàn)倒序和正序排列的示例代碼
冒泡排序是一種簡(jiǎn)單的排序算法,其主要思想是比較相鄰的兩個(gè)元素,根據(jù)需要交換位置,將較大(或較?。┑脑刂饾u冒泡到數(shù)組的一端,從而實(shí)現(xiàn)排序。
1、從小到大排序
function bubbleSort($arr) {
$len = count($arr);
for ($i = 0; $i < $len - 1; $i++) {
for ($j = 0; $j < $len - 1 - $i; $j++) {
if ($arr[$j] > $arr[$j+1]) {
// 交換位置
$temp = $arr[$j];
$arr[$j] = $arr[$j+1];
$arr[$j+1] = $temp;
}
}
}
return $arr;
}
// 測(cè)試示例
$testArray = [5, 3, 8, 4, 2];
$result = bubbleSort($testArray);
print_r($result);
2、倒序排列
function reverseBubbleSort($arr) {
$len = count($arr);
for ($i = 0; $i < $len - 1; $i++) {
for ($j = 0; $j < $len - 1 - $i; $j++) {
if ($arr[$j] < $arr[$j+1]) { // 將比較條件改為小于號(hào)
// 交換位置
$temp = $arr[$j];
$arr[$j] = $arr[$j+1];
$arr[$j+1] = $temp;
}
}
}
return $arr;
}
// 測(cè)試示例
$testArray = [5, 3, 8, 4, 2];
$result = reverseBubbleSort($testArray);
print_r($result);
到此這篇關(guān)于php冒泡算法實(shí)現(xiàn)倒序和正序排列的文章就介紹到這了,更多相關(guān)php冒泡算法內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
PHP數(shù)組和explode函數(shù)示例總結(jié)
有關(guān)php分割字符串explode函數(shù)的用法,使用explode函數(shù)將字符串分割到數(shù)組,這里給大家總結(jié)了幾個(gè)示例,需要的朋友參考下。2015-05-05
php設(shè)計(jì)模式之狀態(tài)模式實(shí)例分析【星際爭(zhēng)霸游戲案例】
這篇文章主要介紹了php設(shè)計(jì)模式之狀態(tài)模式,結(jié)合星際爭(zhēng)霸游戲案例形式分析了php狀態(tài)模式相關(guān)原理、使用技巧與注意事項(xiàng),需要的朋友可以參考下2020-03-03
phpcms手機(jī)內(nèi)容頁(yè)面添加上一篇和下一篇
本文給大家分享的是在phpcms中的手機(jī)內(nèi)容詳情頁(yè)里添加上一篇和下一篇的方法,十分的簡(jiǎn)單實(shí)用,有需要的小伙伴可以參考下。2015-06-06
PHP加密擴(kuò)展庫(kù)Mcrypt安裝和實(shí)例
PHP加密擴(kuò)展庫(kù)有Mcrypt和Mhash,其中,Mcrypt擴(kuò)展庫(kù)可以實(shí)現(xiàn)加密解密功能,今天我我們講的就是Mcrypt的功能和實(shí)例2013-11-11
完美解決thinkphp驗(yàn)證碼出錯(cuò)無(wú)法顯示的方法
這篇文章主要介紹了完美解決thinkphp驗(yàn)證碼出錯(cuò)無(wú)法顯示的方法,對(duì)比官網(wǎng)給出的方法結(jié)合自身的實(shí)踐,給出了一個(gè)相對(duì)可行的解決方法,具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2014-12-12

