美文网首页
PHP常用算法

PHP常用算法

作者: 墨丘利lh | 来源:发表于2018-08-02 13:22 被阅读0次

//二分查找(数组里查找某个元素)  

function bin_sch($array,  $low, $high, $k){   

    if ( $low <= $high){   

        $mid =  intval(($low+$high)/2 );   

        if ($array[$mid] ==  $k){   

            return $mid;   

        }elseif ( $k < $array[$mid]){   

            return  bin_sch($array, $low,  $mid-1, $k);   

        }else{   

            return  bin_sch($array, $mid+ 1, $high, $k);   

        }   

    }   

    return -1;   

}   

//顺序查找(数组里查找某个元素)  

function  seq_sch($array, $n,  $k){   

    $array[$n] =  $k;   

    for($i=0;  $i<$n; $i++){   

        if( $array[$i]==$k){   

            break;   

        }   

    }   

    if ($i<$n){   

        return  $i;   

    }else{   

        return -1;   

    }   

}   

//线性表的删除(数组中实现)  

function delete_array_element($array , $i)  

{  

        $len =  count($array);   

        for ($j= $i; $j<$len; $j ++){  

                $array[$j] = $array [$j+1];  

        }  

        array_pop ($array);  

        return $array ;  

}  

//冒泡排序(数组排序)  

function bubble_sort( $array)  

{  

        $count = count( $array);  

        if ($count <= 0 ) return false;  

        for($i=0 ; $i<$count; $i ++){  

                for($j=$count-1 ; $j>$i; $j--){  

                        if ($array[$j] < $array [$j-1]){  

                                 $tmp = $array[$j];  

                                 $array[$j] = $array[ $j-1];  

                                $array [$j-1] = $tmp;  

                        }  

                }  

        }  

        return $array;  

}  

//快速排序(数组排序)  

function quick_sort($array ) {  

        if (count($array) <= 1) return  $array;  

        $key = $array [0];  

        $left_arr  = array();  

        $right_arr = array();  

        for ($i= 1; $i

                if ($array[ $i] <= $key)  

                        $left_arr [] = $array[$i];  

                else  

                         $right_arr[] = $array[$i ];  

        }  

        $left_arr = quick_sort($left_arr );  

        $right_arr = quick_sort( $right_arr);  

        return array_merge($left_arr , array($key), $right_arr);  

}  

相关文章

  • 常用的排序算法

    常用的排序算法(PHP实现)_慕课手记

  • PHP常用数组排序算法

    title: PHP常用数组排序算法tags: [PHP,数组,排序,算法] 这几天写到的代码中,用到了许多对数组...

  • PHP常用算法

    //二分查找(数组里查找某个元素) functionbin_sch($array,$low,$high,$k){ ...

  • PHP常用算法

    1. 冒泡排序 思路分析:在要排序的一组数中,对当前还未排好的序列,从前往后对相邻的两个数依次进行比较和调整,让较...

  • PHP常用算法

    基于选择的排序算法 常见的基于选择的排序算法有:冒泡排序、插入排序、选择排序、归并排序和快速排序,我们在选在排序算...

  • PHP常用算法

    function test() { $a = 1; $b =&$a; //情况1:echo (++$a...

  • php常用算法汇总

    排序 1.冒泡排序 遍历数组依次比较对换。 2.选择排序 选择排序与冒泡排序类似,区别在于冒泡是每次都对换位置;选...

  • PHP的常用算法

    1、冒泡排序 2、快速排序 3、二分查找 假设数组是升序排列。

  • 算法与数据结构

    五大常用算法之一:分治算法 五大常用算法之二:动态规划算法 五大常用算法之三:贪心算法 五大常用算法之四:回溯法 ...

  • 常用排序算法的 PHP 实现

    排序概念 在计算机领域,排序是将原本无序的队列按照一定的规则分布而成为有序队列的过程,在程序开发中应用比较广泛。 ...

网友评论

      本文标题:PHP常用算法

      本文链接:https://www.haomeiwen.com/subject/kaijvftx.html