排序 查找

php
    /*
     *冒泡排序
     */
    function maopao($array){
        for($i =0;$i < count($array);$i++){
            for($j = $i+1;$j < count($array);$j++){
                if($array[$i] > $array[$j]){
                    $temp = $array[$i];
                    $array[$i] = $array[$j];
                    $array[$j] = $temp;
                }
            }
        }
        return $array;
    }

    /*
     * 二分查找
     */

    function erfen($array,$search,$low = 0,$hight = 100)
    {
        $midPostion = floor(($low + $hight)/2);
        $midData = $array[$midPostion];
        if($midData == $search)
        {
            return $midPostion;
        }
        if($search < $midData)
        {
            $hight = $midPostion;
            if($hight == 0)
            {
                return false;
            }
            return erfen($array,$search,$low,$hight);
        }else{
            $low = $midPostion + 1;
            if($low > $hight){
                return false;
            }
            return erfen($array,$search,$low,$hight);
        }
    }

    /*
     * 100+99+98+.......1;
     */

    function leijia($n)
    {
        if($n == 1){
            return $n;
        }
        return $n + leijia($n-1);
    }


    $a= array(9,4,6,8,2,4,5,1);
    $b= maopao($a);

    $c = array(1,2,3,4,5,6,7,8,9);
    $k = 5;
    $d = erfen($c,$k,0,8);

    $sum = leijia(100);
    echo $sum;

 

你可能感兴趣的:(排序 查找)