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
);
}