美文网首页
明明的算法集

明明的算法集

作者: jooohnny | 来源:发表于2017-10-23 14:42 被阅读0次

    实现汉诺塔问题

    1.把n-1个圆从A移到C
    2.把剩下一个由A移到B
    3.再把n-1个由C移到B,完成

    <?php
    //将所有圆盘从a移到b
    function hanuota($n,$a,$b,$c){
      global $step;
      if($n==1){
        $step++;
        echo "将圆盘 $n 从 $a 柱子 到 $b 柱子 <br />";
      }else{
        hanuota($n-1,$a,$c,$b);
        $step++;
        echo "将圆盘 $n 从 $a 柱子 到 $b 柱子 <br />";
        hanuota($n-1,$c,$b,$a);
      }
    }
    //移动的次数
    $step = 0;
    hanuota(4, 'A', 'B', 'C');
    echo "移动次数:" . $step;
    ?>

    相关文章

      网友评论

          本文标题:明明的算法集

          本文链接:https://www.haomeiwen.com/subject/cmotpxtx.html