$stime = microtime(true);
$array = array(1,2,3,4,5,6,7);
$target = 9;//得出的结论
$array_length = count($array);//数组的长度
function ch_equal($arr, $target, $stime){
$start_point = 0;
$end_point = count($arr)-1;
$len_arr = count($arr);
$com_times = $len_arr*($len_arr-1)/2+$len_arr;
// echo $com_times;die;
$move_times = 0;
while ($move_times<=$com_times && $start_point<=$end_point) {
// echo $start_point."和".$end_point;
if($arr[$start_point] + $arr[$end_point] == $target){
echo $arr[$start_point]." ".$arr[$end_point];
handle_time($stime);
die;
};
if($arr[$start_point] + $arr[$end_point] < $target){
// echo $start_point." ".$end_point."
";
$start_point += 1;
$move_times += 1;
};
if($arr[$start_point] + $arr[$end_point] > $target){
// echo $start_point." ".$end_point."
";
$end_point -= 1;
$move_times += 1;
};
}
}
ch_equal($array, $target, $stime);
function handle_time($stime){
$etime=microtime(true);//获取程序执行结束的时间
$total=$etime-$stime; //计算差值
echo '
该脚本的执行时间为:'.$total."秒";
}