zoukankan      html  css  js  c++  java
  • php冒泡排序详解笔记

    冒泡

    /*
     * 冒泡排序(从小到大)
     * 介绍:
     * 它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。
     * 思路:
     *     比较相邻的元素。如果第一个比第二个大,就交换他们两个。
     *     对第0个到第n-1个数据做同样的工作。这时,最大的数就“浮”到了数组最后的位置上
     *     针对所有的元素重复以上的步骤,除了最后一个
     *     持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较
     * 步骤:  假如10个数字
     *       【
     *         先找出10个数字中最大的抛出去,剩下9个数字
     *         再找出9个数字最大的跑出去,  剩下8个数字
     *          以此类推……
     *        】
     *       怎么找出一组数最大数字(冒泡):
     *         【
     *           将第1个与第2个比,大的往后排
     *           将第2个与第3个比,大的往后排
     *           以此类推……
     *           最后一个就是最大的
     *          】
    

    代码

    $order_array=array(
    5,4,3,6,7,1,2,10,8,9
    );
    function bubble_order($arr){
        //得到长度
        $count_num=count($arr);
    
        for($k=1;$k<$count_num;$k++){
    
            //对长度越来越少的一组数据 找出最大让其浮到最后
    
            for($i=0;$i<$count_num-$k;$i++){
    
                if($arr[$i]>$arr[$i+1]){//相邻比较
                    $tem=$arr[$i];
                    $arr[$i]=$arr[$i+1];
                    $arr[$i+1]=$tem;
                }
    
            }
        }
        return $arr;
    }
    $new_order_arr=bubble_order($order_array);
    

      

  • 相关阅读:
    php单例模式
    php编码规范
    mysql_affected_rows的注意点
    ThinkPHP的sql_mode的默认设置,导致无效信息被插入
    InnoDB事务和锁
    php中const和static的区别和联系
    php 位运算符的实际应用(权限判断)
    使用LBS(地理位置)
    OkHttpClient简单封装
    Gson解析json
  • 原文地址:https://www.cnblogs.com/bluealine/p/7985446.html
Copyright © 2011-2022 走看看