PHP数据结构——二分查找与顺序查找
<?php
//--------------------
// 基本数据结构
//--------------------
//二分查找(数组里查找某个元素)
function bin_sch($arr, $low, $high, $k) {
if($low<=$high) {
$mid = intval(($low+$high)/2);
if($arr[$mid] == $k) {
return $mid;
} elseif($k<$arr[$mid]) {
return bin_sch($arr,$low,$mid-1,$k);
} elseif($k>$arr[$mid]) {
return bin_sch($arr,$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."The Element is here";
} else {
return '-1Sorry';
}
}
for($i=0;$i<1000000;$i++) {//测试数组
$arr1[$i] = $i+1;
}
$time_start = explode(" ",microtime());
seq_sch($arr1,1000000,895624);
$time_end = explode(" ", microtime());
echo "顺序查找法所需要的时间:";
echo ($time_end[0]+$time_end[1] - $time_start[0]-$time_start[1])."<br>";////测试顺序查找法所需要的时间
echo '----------------------------------——————'.'<br>';
$time_start = explode(" ",microtime());
bin_sch($arr1,0,999999,895624).'<br>';
$time_end = explode(' ', microtime());
echo "二分查找法所需要的时间:";
echo ($time_end[0]+$time_end[1] - $time_start[0]-$time_start[1]).'<br>';//测试二分查找法所需要的时间
?>
测试结果:
顺序查找法所需要的时间:0.36866903305054
----------------------------------
二分查找法所需要的时间:0.00011110305786133
在执行效率上二分查找法远大于顺序查找法
相关文档:
首先要了解sql语句
$SQL="delete from `PHP100` where id in (1,2,4)";
表单大概是:
<form action="" method="post">
<input name="ID_Dele[]" type="checkbox" id="ID_Dele[]" value="1"/>
<i ......
[part1] http://download.csdn.net/source/2076258
[part2] http://download.csdn.net/source/2076272
[part3] http://download.csdn.net/source/2076276
[part4] http://download.csdn.net/source/2076283
[part02-04] http://www.ytgps.com/Images/nginx.rar
本文件体积过大分4个包,php-cgi+mysql+nginx.7z ......
0、用单引号代替双引号来包含字符串,这样做会更快一些。因为PHP会在双引号包围的字符串中搜寻变量,单引号则不会,注意:只有echo能这么
做,它是一种可以把多个字符串当作参数的“函数”(译注:PHP手册中说echo是语言结构,不是真正的函数,故把函数加上了双引号)。
1、如果能将类的方法定义成static,就 ......
40条优化php代码的小实例
1.如果一个方法能被静态,那就声明他为静态的,速度可提高1/4;
2.echo的效率高于print,因为echo没有返回值,print返回一个整型;
3.在循环之前设置循环的最大次数,而非在在循环中;
4.销毁变量去释放内存,特别是大的数组;
5.避免使用像__get, __set, __autoload等魔术方法;
6.requiere_once( ......