<?php
/**
* 递归法解汉诺塔问题
**/
function getStep($n, $a, $b, $c) {
global $step;
if ($n == 1) {
$step++;
echo "将圆盘 $n 从 $a 柱子 到 $c 柱子 <br />";
} else {
getStep($n - 1, $a, $c, $b);
$step++;
echo "将圆盘 $n 从 $a 柱子 到 $c 柱子 <br />";
getStep($n - 1, $b, $a, $c);
}
}
//需要移动的次数
$step = 0;
getStep(3, 'A', 'B', 'C');
echo "移动次数:" . $step;
?>
php 实现汉诺塔
最新推荐文章于 2021-03-18 14:03:09 发布