演算法

遞回法


//====遞回法=====

$number = 12;
$counter = 0;

function fib($number)
{

    if ($number == 0) {

        return 0;

    } else if ($number == 1 or $number == 2) {

        return 1;

    } else {
        return (fib($number - 1) + fib($number - 2));
    }
}

for ($counter; $counter〈 $number; $counter++) {

    //echo "|| I (".fib($counter).") | N".fib($number)."|| ";
    echo fib($counter) . " ";
}
//====遞回法=====

貪心法


//====貪心法=====

$counter = 0;

function Fibonacci($number)
{

// if and else if to generate first two numbers
if ($number == 0) {

return 0;

} else if ($number == 1 or $number == 2) {

return 1;

}

// Recursive Call to get the upcoming numbers
else {
return (Fibonacci($number - 1) + Fibonacci($number - 2));
}

}
while ($counter 〈 $number) {
$counter++;
echo fibonacci($counter) . " ";
}

//====貪心法=====

疊代法

//====疊代法=====
<?php

$sum = 1;
$number = 4;

for ($i = 0; $i <= $number; $i++) {

for ($j = $i; $j >= 0; $j--) {

$sum *= $j;
echo $i . " " . $j . " " . $sum . "
";

}
$sum = 1;
}

?>
//====疊代法=====

枚舉法

//====枚舉法=====
<?php
//找出減到變負數時候的值
$x = 1;

$num = 1000;

while ($num <= 0){
$num -= $x;
$x = $x+1;
//echo $num.' ';
//echo ($x+1).' ';
//echo ($x-1).' ';
// echo ($x-1).' ';
}

echo ($x-1).' ';
?>
//====枚舉法=====

回溯法

if($x == 1){

    $num = 1000;

}else if($x == 2){
    $num = 2000;
}else{
    $num = 3000;
}

echo ($num).' ';
0
Tags: No tags

Comments are closed.