技术&日志

Interview-PHP算法

PHP算法

反转函数实现

$arr1 = array('a', 'd', 'v', 'b', 'o');
$arr2 = array('a' => 'b', 1=> 'a', 3, 'k', 'wor' => 'wo');
/**
* 反转数组-方式一
* @param $arr
* @return array
*/
function reverseArr($arr)
{
$arr = array_values($arr);
$arrNew = array();
$total = count($arr);
for ($i = $total -1; $i >= 0; $i--) {
$arrNew[] = $arr [$i];
}
return $arrNew;
}
/**
* 反转数组-方式二
* @param $arr
* @return array
*/
public function reverseArr($arr)
{
$arr = array_values($arr);
$total = count($arr) - 1;
$left = 0;
$right = $total;
while ($left < $right) {
$tem = $arr[$left];
$arr[$left++] = $arr[$right];
$arr[$right--] = $tem;
}
return $arr;
}

发表评论