<?PHP
/**
* 冒泡排序算法
* @param array $arr
* @return array
*/
function bubble_sort($arr) {
// 判断参数是否为数组,且不为空
if (!is_array($arr) || empty($arr)) {
return $arr;
}
// 循环需要冒泡的轮数
for ($i = 1, $len = count($arr); $i < $len; $i++) {
// 循环每轮需要比较的次数
for ($j = 0; $j < $len - $i; $j++) {
// 大的数字 往后挪
if ($arr[$j] > $arr[$j + 1]) {
// 当第一个数比第二数大,先把小的数保存起来
$temp = $arr[$j + 1];
// 把大的索引值改为大值
$arr[$j + 1] = $arr[$j];
// 然后把小的值赋给索引小的即可
$arr[$j] = $temp;
}
}
}
var_dump($arr);
}
$arr = [1,5,6,8,4,3,2];
bubble_sort($arr);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。