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

php的那些基础算法

2013-10-31 22:23 429 查看
<?php
/**
* 冒泡排序法
* @param array $arr
* @return boolean|array
*/
function bubble_sort($arr)
{
$len = count($arr);
if($len <= 0)
{
return false;

}
for($i=0; $i<$len-1;$i++)
{
for($j=$len-1; $j>$i;$j--)
{
if($arr[$j-1]>$arr[$j])
{
$temp = $arr[$j-1];
$arr[$j-1]= $arr[$j];
$arr[$j] = $temp;
}
}
}
return $arr;
}

/**
* 快速排序
*
* @param array $arr
* @return array:
*/
function quick_sort($arr)
{
$len = count($arr);
if($len <= 1)
{
return $arr;
}
$mid = $arr[0];
$left_arr = array();
$right_arr = array();
for($i=1; $i<$len; $i++)
{
if($arr[$i] <= $mid)
{
$left_arr[] = $arr[$i];
}
else
{
$right_arr[] = $arr[$i];
}
}
$left_arr = quick_sort($left_arr);
$right_arr = quick_sort($right_arr);
return  array_merge($left_arr, array($mid), $right_arr);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息