package com.zoujc.triangle;

/**
 * 汉诺塔
 */
class TowersApp {
    public static void main(String[] args){
        doTowers(3,'A','B','C');
    }
    public static void doTowers(int topN,char from,char inner,char to){
        if(topN == 1){
            System.out.println("Disk 1 from " + from + " to " + to);
        }else {
            doTowers(topN-1,from,to,inner);
            System.out.println("Disk " + topN + " from " + from + " to " + to);
            doTowers(topN-1,inner,from,to);
        }
    }
}

java版数据结构与算法—递归(汉若塔)

相关文章: