汉诺塔的实现

    技术2022-05-20  48

    package DiGui;

    public class TowersApp { static int nDisk=4; public static void main(String[] args){  doTowers(nDisk,'A','B','c'); } public static void doTowers(int topN,char from,char inter,char to){  if(topN==1)   //塔上只有一个碟子的时候   System.out.println("Disk 1 from "+from+" to "     + to);  else  {   //n-1个碟子的运送途径   doTowers(topN-1,from,to,inter);   System.out.println("Disk  "+topN+" from "+from+" to "+to);   //最大的一个到达第三个塔,它上面的碟子让第二大的从原来中间的开始,通过第一个塔到达第三个塔   doTowers(topN-1,inter,from,to);  } }}


    最新回复(0)