zoukankan      html  css  js  c++  java
  • php实现快速排序和冒泡排序

    <?php
    
    $arr = array(9,4,12,34,1,43,23,7,3,4,5,6,33,22,12,21,15,62,1222,21,322,432,31,54,64);
    //$sorted_arr = quickSort($arr);
    $sorted_arr = bublleSort($arr);
    var_dump($sorted_arr);
    
    
    // 快速排序算法
    function quickSort($arr){
        if(count($arr)>1){
            $k=$arr[0];
            $x=array();
            $y=array();
            $_size=count($arr);
            for($i=1;$i<$_size;$i++){
                if($arr[$i]<=$k){
                    $x[]=$arr[$i];
                }else{
                    $y[]=$arr[$i];
                }
            }
            $x=quickSort($x);
            $y=quickSort($y);
            return array_merge($x,array($k),$y);
        }else{
            return $arr;
        }
    }
    
    // 冒泡排序算法
    function bublleSort($arr){
        for($l = count($arr);$l>1;$l--){
            for($i=0;$i<$l-1;$i++){
                if($arr[$i] > $arr[$i+1]){
                    $tmp = $arr[$i];
                    $arr[$i] = $arr[$i+1];
                    $arr[$i+1] = $tmp;
                }
            }
        }
        return $arr;
    }
    ?>

     2015.3.16增加插入排序

    <?php                                                                                                                                                                
    function insertSort($arr) {
        for ($i = 1; $i < count($arr); $i++) {
            $tmp = $arr[$i];
            $key = $i-1;
            while ($key >= 0 && $tmp < $arr[$key]){
                $arr[$key+1] = $arr[$key];
                $key--;
            }
            if (($key+1) != $i) {
                $arr[$key+1] = $tmp;
            }
        }
        return $arr;
    }
    
    $arr = array(3,4,2,54,12,34,65,12,456,12,45,75);
    $arr = insertSort($arr);
    var_export($arr);
    
    ?>
  • 相关阅读:
    今日总结
    每日总结
    每日总结
    每日总结
    重返现世
    [PKUWC2018]随机游走
    [HAOI2015]按位或
    [NOI2020] 超现实树
    [NOI2017] 游戏
    [CSACADEMY]Card Groups
  • 原文地址:https://www.cnblogs.com/sooj/p/3799647.html
Copyright © 2011-2022 走看看