• php冒泡排序实现方法,传入几个数字排序后 输出实战例子


    php冒泡排序实现方法,传入几个数字排序后 输出实战例子

    算法和数据结构是一个编程工作人员的内功。
    四种入门级排序算法: 冒泡排序、选择排序、插入排序、快速排序。

    一、冒泡排序

      原理:对一组数据,比较相邻数据的大小,将值小数据在前面,值大的数据放在后面。 (以下都是升序排列,即从小到大排列)

      举例说明: $arr = array(6, 3, 8, 2, 9, 1);

       $arr 有6个数据,按照两两比较大小如下,注意 比较轮数 和 每轮比较次数

      第一轮排序:

        第一次比较 6和3比较 结果:3 6 8 2 9 1

        第二次比较 6和3比较 结果:3 6 8 2 9 1

        第三次比较 8和2比较 结果:3 6 2 8 9 1

        第四次比较 8和9比较 结果:3 6 2 8 9 1

        第五次比较 9和1比较 结果:3 6 2 8 1 9

      第一轮比较总结:1.排序第1轮、比较5次,没有获得从小到大的排序

    function orderArray($arr) {
        $count = count($arr);
        $temp = 0;
        // 外层控制排序轮次
        for ($i = 0; $i < $count - 1; $i ++) {
            // 内层控制每轮比较次数
            for ($j = 0; $j < $count - 1 - $i; $j ++) {
                if ($arr[$j] > $arr[$j + 1]) {
                    $temp = $arr[$j];
                    $arr[$j] = $arr[$j + 1];
                    $arr[$j + 1] = $temp;
                }
            }
        }
        return $arr;
    }
    
    function orderNumber($a1,$a2,$a3,$a4) {
        $arr = array($a1,$a2,$a3,$a4);
        $rs = orderArray($arr);
        echo '<b>'.$rs[0].$rs[1].$rs[2].$rs[3].'</b>';
    }
    <?=orderNumber(2,9,5,3) ?>
  • 相关阅读:
    HashMap源码解读(转)
    使用javascript开发2048
    程序猿接私活经验总结,来自csdn论坛语录
    Cocos2d-x实例:设置背景音乐与音效- AppDelegate实现
    Jenkins(二)
    SVN高速新手教程
    Visio Premium 2010密钥+破解激活方法
    oracle中LAG()和LEAD()等分析统计函数的使用方法(统计月增长率)
    shell语法简单介绍
    memset函数具体说明
  • 原文地址:https://www.cnblogs.com/zdz8207/p/php-order-number.html
Copyright © 2020-2023  润新知