美文网首页
汉诺塔算法java实现

汉诺塔算法java实现

作者: 抽丝虫 | 来源:发表于2016-08-08 14:46 被阅读0次
    package com.zsh;
    
    public class Hanoi {
        /**
         * @param n 盘子的数目
         * @param origin 源座
         * @param assist 辅助座
         * @param destination  目的座
         */
        public void hanoi(int n, char origin, char assist, char destination) {
            if (n == 1) {
                move(origin, destination);
            } else {
                hanoi(n - 1, origin, destination, assist);
                move(origin, destination);
                hanoi(n - 1, assist, origin, destination);
            }
        }
    
        // Print the route of the movement
        private void move(char origin, char destination) {
            System.out.println("Direction:" + origin + "--->" + destination);
        }
    
        public static void main(String[] args) {
            Hanoi hanoi = new Hanoi();
            hanoi.hanoi(4, 'A', 'B', 'C');
        }
    }
    

    相关文章

      网友评论

          本文标题:汉诺塔算法java实现

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