phpのバブルソートアルゴリズムのコードをどのように書くか。
以下是实现冒泡排序算法的示例PHP代码:
function bubbleSort($arr) {
$len = count($arr);
for ($i = 0; $i < $len - 1; $i++) {
for ($j = 0; $j < $len - $i - 1; $j++) {
if ($arr[$j] > $arr[$j + 1]) {
// 交换位置
$temp = $arr[$j];
$arr[$j] = $arr[$j + 1];
$arr[$j + 1] = $temp;
}
}
}
return $arr;
}
// 测试示例
$nums = array(5, 3, 8, 2, 1, 4);
$sortedNums = bubbleSort($nums);
echo "排序后的数组为:" . implode(", ", $sortedNums);
bubbleSort 関数は、配列のパラメータ $arr を受け取り、それをバブルソートアルゴリズムで並べ替えます。外側のループでは、配列要素の数から1を引いた回数だけ繰り返し、比較の回数を制御します。内側のループでは、残りの未ソート部分の要素を繰り返し、現在の要素が次の要素よりも大きい場合はそれらの位置を交換します。この方法により、各ループで未ソート部分の最大要素が末尾に「バブル」されます。最後に、並べ替えられた配列を返します。
上記の例では、与えられた入力配列は[5、3、8、2、1、4]です。 bubbleSort関数を呼び出し、返されたソートされた配列を画面に出力することで、ソートされた結果である1、2、3、4、5、8を得ることができます。