【PHP】冒泡排序

简介: 【PHP】冒泡排序
<?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);
相关文章
|
算法 搜索推荐 PHP
PHP算法题:如何实现冒泡排序
PHP算法题:如何实现冒泡排序
165 0
|
算法 PHP
PHP数组学习之使用冒泡算法对元素进行升序排序!
在之前的文章《PHP数组学习之返回给定两数间的全部公因数和最大公因数》中,我们介绍了利用数组方法返回给定两个整数a和b间的全部公因数和最大公因数的方法。这次我们进行PHP数组的学习,介绍一下利用PHP如何实现冒泡排序,使用冒泡算法怎么对数组元素进行升序排序。 首先我们来了解一下什么是冒泡算法(冒泡排序)? 冒泡排序(Bubble Sort),是因为越小的元素会经由交换慢慢“浮”到数列的顶端(升序或降序排列),就如同碳酸饮料中二氧化碳的气泡最终会上浮到顶端一样,故名“冒泡排序”。 思想:
212 0
|
PHP
php冒泡排序
$test_array = array (12, 5, 10, 9, 100, - 10 ); //$sort_array = sortasc ( $test_array ); $sort_array = sortdesc ( $test_array ); ...
910 0
|
2月前
|
关系型数据库 MySQL PHP
PHP和Mysql前后端交互效果实现
本文介绍了使用PHP连接MySQL数据库的基本函数及其实现案例。内容涵盖数据库连接、选择数据库、执行查询、获取结果等常用操作,并通过用户登录和修改密码的功能实例,展示了PHP与MySQL的交互过程及代码实现。
264 0
PHP和Mysql前后端交互效果实现
|
7月前
|
关系型数据库 MySQL Linux
查看Linux、Apache、MySQL、PHP版本的技巧
以上就是查看Linux、Apache、MySQL、PHP版本信息的方法。希望这些信息能帮助你更好地理解和使用你的LAMP技术栈。
384 17
|
前端开发 关系型数据库 MySQL
PHP与MySQL动态网站开发实战指南####
【10月更文挑战第21天】 本文将深入浅出地探讨如何使用PHP与MySQL构建一个动态网站,从环境搭建到项目部署,全程实战演示。无论你是编程新手还是希望巩固Web开发技能的老手,都能在这篇文章中找到实用的技巧和启发。我们将一起探索如何通过PHP处理用户请求,利用MySQL存储数据,并最终呈现动态内容给用户,打造属于自己的在线平台。 ####
524 0
|
8月前
|
关系型数据库 MySQL PHP
源码编译安装LAMP(HTTP服务,MYSQL ,PHP,以及bbs论坛)
通过以上步骤,你可以成功地在一台Linux服务器上从源码编译并安装LAMP环境,并配置一个BBS论坛(Discuz!)。这些步骤涵盖了从安装依赖、下载源代码、配置编译到安装完成的所有细节。每个命令的解释确保了过程的透明度,使即使是非专业人士也能够理解整个流程。
235 18