【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算法题:如何实现冒泡排序
116 0
|
算法 PHP
PHP数组学习之使用冒泡算法对元素进行升序排序!
在之前的文章《PHP数组学习之返回给定两数间的全部公因数和最大公因数》中,我们介绍了利用数组方法返回给定两个整数a和b间的全部公因数和最大公因数的方法。这次我们进行PHP数组的学习,介绍一下利用PHP如何实现冒泡排序,使用冒泡算法怎么对数组元素进行升序排序。 首先我们来了解一下什么是冒泡算法(冒泡排序)? 冒泡排序(Bubble Sort),是因为越小的元素会经由交换慢慢“浮”到数列的顶端(升序或降序排列),就如同碳酸饮料中二氧化碳的气泡最终会上浮到顶端一样,故名“冒泡排序”。 思想:
153 0
|
PHP
php冒泡排序
$test_array = array (12, 5, 10, 9, 100, - 10 ); //$sort_array = sortasc ( $test_array ); $sort_array = sortdesc ( $test_array ); ...
857 0
|
2月前
|
前端开发 关系型数据库 MySQL
PHP与MySQL动态网站开发实战指南####
【10月更文挑战第21天】 本文将深入浅出地探讨如何使用PHP与MySQL构建一个动态网站,从环境搭建到项目部署,全程实战演示。无论你是编程新手还是希望巩固Web开发技能的老手,都能在这篇文章中找到实用的技巧和启发。我们将一起探索如何通过PHP处理用户请求,利用MySQL存储数据,并最终呈现动态内容给用户,打造属于自己的在线平台。 ####
64 0
|
1月前
|
存储 关系型数据库 MySQL
PHP与MySQL动态网站开发:从基础到实践####
本文将深入探讨PHP与MySQL的结合使用,展示如何构建一个动态网站。通过一系列实例和代码片段,我们将逐步了解数据库连接、数据操作、用户输入处理及安全防护等关键技术点。无论您是初学者还是有经验的开发者,都能从中获益匪浅。 ####
|
2月前
|
安全 关系型数据库 MySQL
PHP与MySQL动态网站开发实战指南####
——深入探索LAMP栈下的高效数据交互与处理技巧 ####
|
1月前
|
关系型数据库 MySQL PHP
php实现一个简单的MySQL分页
通过本文的详细步骤和代码示例,我们实现了一个简单的PHP MySQL分页功能。主要步骤包括计算总记录数、设置分页参数、查询当前页的数据以及生成分页链接。这种分页方式适用于大多数Web应用,能够有效提升用户体验和页面响应速度。
29 4