本文实例讲述了java基于递归算法实现汉诺塔问题。分享给大家供大家参考,具体如下:
package test;import java.util.List;import java.util.ArrayList;import java.util.Scanner;import sun.net.www.content.audio.x_aiff;/** * @author 年浩 * */public class test { public static void move(char x,char y) { System.out.printf("%c->%c", x,y); System.out.println(); } public static void hanoit(int n,char one,char two,char three) { if(n==1) move(one, three); else{ hanoit(n-1, one, three, two); move(one, three); hanoit(n-1, two, one, three); } } public static void main(String[] args) { // TODO Auto-generated method stub Scanner cin = new Scanner(System.in); System.out.println("请输入汉诺塔的个数"); int a = cin.nextInt(); hanoit(a, 'x','y','z'); }}
希望本文所述对大家java程序设计有所帮助。
新闻热点
疑难解答
图片精选