zoukankan      html  css  js  c++  java
  • java数据结构-递归算法-汉诺塔算法

    package com.digui;

    /**
    * @auther 付强
    * @date 2020/2/14 - 15:37
    */
    public class TestHanoi {
    public static void main(String[] args) {
    hanoi(3,'A','B','C');
    }

    /**
    *
    * @param n 共有n个盘子
    * @param from 开始的柱子
    * @param in 中间的柱子
    * @param to 目标柱子
    * 无论有多少个盘子,都认为只有两个,上面的所有盘子和最下面的一个盘子
    */
    public static void hanoi(int n,char from,char in,char to){
    //只有一个盘子
    if(n==1){
    System.out.println("第1个盘子从"+from+"移动到"+to);
    }
    //无论有多少个盘子,都认为只有两个,上面的所有盘子和最下面的一个盘子
    else{
    //移动上面的所有的盘子到中间位置
    hanoi(n-1,from,to,in);
    //移动下面的盘子
    System.out.println("第"+n+"个盘子从"+from+"移到"+to);
    //把上面的所有盘子从中间位置移到目标位置
    hanoi(n-1,in,from,to);
    }
    }
    }
  • 相关阅读:
    由一段代码说开去——set
    由一段代码说开去——list
    day 11
    day 16
    day 10
    day 13
    day 9
    day 18
    day 12
    day 14
  • 原文地址:https://www.cnblogs.com/fuqiang-java/p/12308398.html
Copyright © 2011-2022 走看看