PHP基础算法详解,php常用算法和时间复杂度?

用户投稿 36 0

关于“php基础算法”的问题,小编就整理了【3】个相关介绍“php基础算法”的解答:

php常用算法和时间复杂度?

按数量级递增排列,常见的时间复杂度有:常数阶O(1),对数阶O(log2n),线性阶O(n),线性对数阶O(nlog2n),平方阶O(n2),立方阶O(n3)

复制代码 代码如下:

//二分查找O(log2n)

function erfen($a,$l,$h,$f){

if($l >$h){ return false;}

$m = intval(($l+$h)/2);

if ($a[$m] == $f){

return $m;

}elseif ($f < $a[$m]){

return erfen($a, $l, $m-1, $f);

}else{

return erfen($a, $m+1, $h, $f);

}

}

$a = array(1,12,23,67,88,100);

var_dump(erfen($a,0,5,1));

//遍历树O(log2n)

function bianli($p){

$a = array();

foreach (glob($p.'/*') as $f){

if(is_dir($f)){

$a = array_merge($a,bianli($f));

}else{

$a[] = $f;

PHP基本公式?

在PHP中,可以利用算术运算符来实现加减乘除的计算公式,算术运算符用于将符号两边的数值进行运算,计算公式为“x + y”、“x - y”、“x * y”和“x / y”,分别表示两个数的和、差、积和商。

下面主要讲述 round, floor, ceil, pow, rand,max, min, decbin, bindec, dechex, hexdec, decoct, octdec 函数。

round

round - 对浮点数进行四舍五入。round 函数语法如下:

round(float,precision)

其中参数 precision 表示小数点后面要保持的精度位数。如果不写参数 precision,表示四舍五入到整数位,比如:

echo round(3.4); // 3echo round(3.5); // 4echo round(3.6); // 4

如果 precision 为2,表示四舍五入到小数点后2位。示例如下:

echo round(1.95583, 2); // 1.96

php异或算法?

/**

* PHP字符串“异或”算法

* param array key

* @param Request $request

* @return mixed|string|void

*/

public function setSecretKey(Request $request){

$keyArr = $request->input('key');

if(!is_array($keyArr) || empty($keyArr))

return;

foreach ($keyArr as $v){

if(empty($v) || (strlen($v) != 32)){

return;

}

}

if(count($keyArr) == 1)

return $keyArr[0];

$arrLength = count($keyArr);

$initKey = "00000000000000000000000000000000";

$initKeyArr = str_split($initKey);

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

$newKey = '';

for($j = 0;$j < strlen($keyArr[$i]);$j++){

到此,以上就是小编对于“php基础算法”的问题就介绍到这了,希望介绍关于“php基础算法”的【3】点解答对大家有用。

抱歉,评论功能暂时关闭!