汉诺塔问题

来源:互联网 发布:php curl exec 不输出 编辑:程序博客网 时间:2024/05/17 15:06
package com.sun.DoSubject;//汉诺塔问题,规律//1.先将n-1个盘子从1挪到2//2.再将第n个最大的盘子从1挪到3//3.再将n-1个盘子从2挪到3public class HanoiQuestion {public static void main(String[] args) {HanoiQuestion a = new HanoiQuestion();a.hannoi(3, 1, 2, 3);}/** *  * @param n *            :有几个盘子 * @param p1第一个木桩 * @param p2第二个木桩 * @param p3第三个木桩 */public void hannoi(int n, int p1, int p2, int p3) {if (n == 1) {System.out.println("将第" + p1 + "个木桩的盘子移动到第" + p3 + "个木桩");} else {hannoi(n - 1, p1, p3, p2);System.out.println("将第" + p1 + "个木桩的盘子移动到第" + p3 + "个木桩");hannoi(n - 1, p2, p1, p3);}}}

0 0
原创粉丝点击