冒泡排序是一种简单直观的排序算法,它通过比较相邻元素并交换顺序,从而逐步将较大的元素向数组尾部冒泡出来,最终实现整体有序的效果。冒泡排序的核心思想是重复遍历数组,每一轮将最大值依次交换到最右边。
function bubbleSort($arr) {
$length = count($arr);
for ($i = 0; $i < $length - 1; $i++) {
for ($j = 0; $j < $length - $i - 1; $j++) {
if ($arr[$j] > $arr[$j + 1]) {
// 交换当前位置与下一个位置的元素
$temp = $arr[$j];
$arr[$j] = $arr[$j + 1];
$arr[$j + 1] = $temp;
}
}
}
return $arr;
}
// 示例用法
$unsortedArray = [5, 3, 1, 2, 4];
$sortedArray = bubbleSort($unsortedArray);
print_r($sortedArray);