sdfsdnfslk 发表于 2017-3-29 14:07:24

一个php算法题目我的解答

Yahoo中国面试题PHP算法(2010-03-02 22:51:13)转载
标签:it分类:Interview
3.7 写一个function实现数组内每个元素之间加法的递代运算?
注:数组元素全部为自然数.
例:
$data=array(1,2,3);
程序要求打印出数组每个数组元素相互之间各种可能性加法(包括元素自已本身加法)
1+1=2,1+2=3,1+3=5,
2+2=4,2+3=5,
3+3=6
打印出以下结果
PHP代码
Array   
(   
    => Array   
      (   
             => 2   
             => 3   
             => 4   
      )   
    => Array   
      (   
             => 4   
             => 5   
      )   
    => Array   
      (   
             => 6   
      )   
)   

我的code

$data = array(1,2,3);
$res = array();   
echo "calc:\n";
calc($data, $result);
var_dump($result);
function calc($data, &$res)
{               
if(count($data)<1)
return;
$item = $data;
foreach($data as $v)
{
$res[$item-1][] = $item+$v;
}                     
calc(array_splice($data, 1), &$res);
}
页: [1]
查看完整版本: 一个php算法题目我的解答