手机
当前位置:查字典教程网 >编程开发 >Java >java数据结构和算法学习之汉诺塔示例
java数据结构和算法学习之汉诺塔示例
摘要:复制代码代码如下:packagecom.tiantian.algorithms;/***_|_1||*__|__2||*___|___3||...

复制代码 代码如下:

package com.tiantian.algorithms;

/**

* _|_1 | |

* __|__2 | |

* ___|___3 | | (1).把A上的4个木块移动到C上。

* ____|____4 | |

* A B C

*

* | | |

* | _|_1 |

* | __|__2 | 要完成(1)的效果,必须要把1、2、3木块移动到B,这样才能把4移动到C

* ____|____4 ___|___3 | 如:代码中的“调用(XX)”

* A B C

*

* | | |

* | _|_1 |

* | __|__2 | 此时,题目就变成了把B上的3个木块移动到C上,回到了题目(1)

* | ___|___3 ____|____4 如:代码中的“调用(YY)”

* A B C

*

* 然后循环这个过程

*

* @author wangjie

* @version 创建时间:2013-3-4 下午4:09:53

*/

public class HanoiTowerTest {

public static void main(String[] args) {

doTowers(4, 'A', 'B', 'C');

}

public static void doTowers(int topN, char from, char inter, char to){

if(topN == 1){

System.out.println("最后把木块1从" + from + "移动到" + to);

}else{

doTowers(topN - 1, from, to, inter); // 调用(XX)

System.out.println("把木块" + topN + "从" + from + "移动到" + to);

doTowers(topN - 1, inter, from ,to); // 调用(YY)

}

}

}

【java数据结构和算法学习之汉诺塔示例】相关文章:

java单例模式学习示例

java学习之路_篇超好的文章第1/3页

关于try 和 throw 简单使用示例

java网络编程中向指定URL发送GET POST请求示例

java Collection 之List学习介绍

java集合框架的体系结构详细说明

java数组输出的实例代码

java 实现文件复制和格式更改的实例

java list用法示例详解

java和c/c++ 数据类型长度的比较

精品推荐
分类导航