您的位置:首页 > 编程语言 > PHP开发

php-算法

2015-12-31 08:54 525 查看
PHP冒泡法

//PHP冒泡 从小到大
function maopao(&$arr)
{
if(!empty($arr))
{
for($i=0;$i<count($arr);$i++)
{
if($arr[$i]>$arr[$j])
{
//开始交换
$temp = $arr[$i];
$arr[$i] = $arr[$j];
$arr[$j] = $temp;
}
}
}
return $arr;
}
}


php二分法查找

//二分法查找
function erfenfa($a,$arr)
{
  print_r($arr);
  if(!empty($a) && !empty($arr))
{
  $start = 0;
  $end = count($arr)-1;
  $i = 0;
  while($start <= $end) {
  $i ++;
  $step = floor($end / 2);
  if($a == $arr[$step])
{
  print_r($arr[$step]);
  return $a;
}
  if($a >$arr[$step])
{
  $start = $step;
}
  if($a < $arr[$step])
{
  $end = $step;
}
}
}
}


[b]php求素数 – 计算 a 到 b 之间的素数。[/b]

//php求素数 - 计算 a 到 b 之间的素数。
function sushu($a,$b)
{
if(!empty($a) && !empty($b))
{
if($b<$a) return;
$temp = array();
for($i=$a;$i <=$b;$i++)
{
$j = intval(sqrt($i));
$flag = true;
if($i<=3)
{
$temp[$i] = $i;
}else
{
for($x=2;$x<=$j;$x++)
{
if($i%$x==0)
{
$flag = false;
break;
}
}
if($flag)
{
$temp[$i] = $i;
}
}
}
return $temp;
}
}


php递归

//PHP输出乘法表-递归
function digui($a,$step)
{
if($a >$step) return;
if( !empty($a) && !empty($step) )
{
for($i=1;$i<=$a;$i++)
{
echo $i.'*'.$a.'='.$a*$i.”\t”;
if($i == $a ) echo ‘
‘;
}
$a = $a + 1;
digui($a,$step);
}
}


PHP输出乘法表-循环 代码示例

//PHP输出乘法表-循环
function chengfa($a,$step)
{
if( !empty($a) && !empty($step) )
{
for($i=$a;$i<=$step;$i++)
{
for($j=1;$j<=$i;$j++)
{
echo $j.'*'.$i.'='.$i*$j.”\t”;
if($i==$j) echo ‘
‘;
}
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: