以下是一個(gè)使用PHP實(shí)現(xiàn)冒泡排序的示例代碼:
function bubbleSort($arr) {
$n = count($arr);
for ($i = 0; $i < $n - 1; $i++) {
for ($j = 0; $j < $n - $i - 1; $j++) {
if ($arr[$j] > $arr[$j + 1]) {
$temp = $arr[$j];
$arr[$j] = $arr[$j + 1];
$arr[$j + 1] = $temp;
}
}
}
return $arr;
}
// 測試
$arr = [4, 2, 7, 1, 5];
$result = bubbleSort($arr);
print_r($result);
此代碼定義了一個(gè)名為bubbleSort
的函數(shù),接受一個(gè)數(shù)組作為參數(shù),并返回排序后的數(shù)組。函數(shù)使用嵌套的兩個(gè)循環(huán)來遍歷數(shù)組并比較相鄰元素的大小,如果前一個(gè)元素大于后一個(gè)元素,則交換它們的位置。通過多次遍歷,將最大的元素逐漸“冒泡”到數(shù)組的末尾。最后返回排序后的數(shù)組。
在測試部分,我們定義并初始化一個(gè)數(shù)組$arr
,然后調(diào)用bubbleSort
函數(shù)對數(shù)組進(jìn)行排序,并將排序結(jié)果打印輸出。輸出結(jié)果將是已排序的數(shù)組。