JAVA编程实例--汉诺塔小游戏

本文介绍了汉诺塔游戏及其规则,强调了递归在解决汉诺塔问题中的重要性。文章详细讲解了如何通过Java编程实现汉诺塔问题的解决方案,包括基础知识点、技术要点、实现步骤和递归调用的原理,帮助读者理解递归程序设计方法。
摘要由CSDN通过智能技术生成

一、实例说明

汉诺塔问题:传说在古代印度的贝拿勒斯圣庙里,安放了一块黄铜板,板上插了三根宝石柱,在其中一根宝石柱上,自上而下按由小到大的顺序串有64个金盘。这就是汉诺塔游戏。要求将左边柱子上的64个金盘按照下面的规则移到右边的柱子上。如图2-1所示:

规则:

a) 一次只能移一个盘子。

b) 盘子只能在三个柱子上存放。

c) 任何时候大盘不能放在小盘上面。

2-1 汉诺塔示意图

二、基础知识点

汉诺塔是非常经典的关于递归程序的例子,读者如果将来要从事程序开发工作,则务必要掌握递归程序的设计方法。递归是程序设计中一个强有力的工具,有很多数学函数是递归定义的,比如大家熟悉的阶乘函数。

下面来简要分析一下汉诺塔问题是如何通过递归来解决的。

简化问题:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值