1、杨辉三角
function triangle($n) {
for ($i = 0; $i < $n; $i++) {
for ($j = 0; $j <= $i; $j++) {
if ($j == 0 || $i == $j) {
$arr[$i][$j] = 1;
} else {
$arr[$i][$j] = $arr[$i - 1][$j] + $arr[$i - 1][$j - 1];
}
echo $arr[$i][$j] . "\t";
}
echo "<br/>";
}
}
2、求牛的数目:有一母牛,到4岁可生育,每年一头,所生均是一样的母牛,到15岁绝育,不再能生,20岁死亡,问n年后有多少头牛
function crow($n, $num) {
for ($i = 1; $i <= $n; $i++) {
if ($i >= 4 && $i < 15) {
$num++;
$num = crow($n - $i, $num);
}
if ($i == 20) {
$num--;
}
}
return $num;
}
function t($n) {
static $num = 1;
for ($j = 1; $j <= $n; $j++) {
if ($j >= 4 && $j < 15) {
$num++;
t($n - $j);
}
if ($j == 20) {
$num--;
}
}
return $num;
}
3、有一个多维数组,求key值为aa的值,用数组返回
function findValue($array, $value) {
if (is_array($array)) {
foreach ($array as $key => $item) {
if ($key == 'aa') {
$value[] = $item;
}
if (is_array($item)) {
$value = findValue($item, $value);
}
}
}
return $value;
}
4、猴子选大王
function findKing($list, $i) {
if (count($list) == 1) {
return $list;
}
foreach ($list as $key => $value) {
if ($i % 3 == 0) {
unset($list[$key]);
}
$i++;
}
if (count($list) != 1) {
return findKing($list, $i);
}
return $list;
}