C++ 递归实现汉诺塔
C++实现汉诺塔
#include <iostream>
using namespace std;
void move(int n,char x,char y,char z)
{
if(n==)
{
cout<<x<<"--->"<<z<<endl; }
else
{
move(n-,x,z,y);
cout<<x<<"--->"<<z<<endl;
move(n-,y,x,z);
}
} void m(int n,char c1,char c2,char c3)
{
if(n==)
{
cout<<c1<<"------------------>"<<c3<<endl;
}
else
{
m(n-,c1,c3,c2);
cout<<c1<<"------------------>"<<c3<<endl;
m(n-,c2,c1,c3);
}
}
int main()
{
int a;
char x1='X';char x2='Y';char x3='Z';
cout<<"请输入汉罗塔的层数:"<<endl;
cin>>a;
cout<<"移动步骤日下:"<<endl;
move(a,x1,x2,x3);
//m(a,x1,x2,x3);
return ;
}
C++ 递归实现汉诺塔的更多相关文章
- Python递归实现汉诺塔
Python递归实现汉诺塔: def f3(n,x,y,z): if(n==1): print(x,'--->',z) else: f3(n-1,x,z,y) print(x,'--->' ...
- Go基础之函数递归实现汉诺塔
Go递归实现汉诺塔 package main import "fmt" // a 是源,b 借助, c 目的长度 func tower(a, b, c string, layer ...
- C#递归解决汉诺塔问题(Hanoi)
using System;using System.Collections.Generic;using System.Linq;using System.Text; namespace MyExamp ...
- java利用递归实现汉诺塔算法
package 汉诺塔; //引入Scanner包,用于用户输入 import java.util.Scanner; public class 汉诺塔算法 { public static void m ...
- c++迭代递归实现汉诺塔(5种迭代方法满足你)
#include <iostream> //从A到C using namespace std; int n; void ready() { cout << "请输入汉 ...
- 零基础入门学习Python(24)--递归:汉诺塔
知识点 这节课主要讲解用递归的方法,实现汉诺塔的解答 对于游戏的玩法,我们可以简单分解为三个步骤: 1) 将前63个盘子从X移动到Y上. 2) 将最底下的第64个盘子从X移动到Z上. 3) 将Y上的6 ...
- js递归解决汉诺塔问题
汉诺塔是一个印度的古老传说.有三个圆柱,其中一个圆柱上放着若干圆盘,这些圆盘从上到下,直径递增,利用一个辅助圆柱,将原来柱子上的圆盘放到另一个柱子上,依旧是从上到下直径递增. 汉诺塔是一个经典的递归案 ...
- python数据结构_递归_汉诺塔问题
已经不是第一次写这个汉诺塔问题, 其实递归还真是不太好理解, 因为递归这种是想其实有点反人类, 为什么? 因为不太清楚, 写个循环一目了然, 用递归其实要把核心逻辑理清楚, 要不根本没法进行下去 所有 ...
- C语言:使用递归解决汉诺塔问题。
//汉诺塔:汉诺塔(又称河内塔)问题是源于印度一个古老传说的益智玩具.大梵天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘.大梵天命令婆罗门把圆盘从下面开始按大小 ...
随机推荐
- HDUOJ-------2149Public Sale
Public Sale Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total ...
- 使用WinSCP连接linux
1.运行WinSCP工具,新建站点,输入主机名.用户名.密码,点击“保存(S)...”按钮 2.点击“确定”按钮,保存站点信息 3.选择左侧列表中的“root@192.168.67.2”这一项,然后点 ...
- Javascript-js实现多线程
原文地址:https://www.cnblogs.com/haodawang/articles/5850822.html 在讲之前,大家都知道js是基于单线程的,而这个线程就是浏览器的js引擎.首先来 ...
- WebDav的java客户端开发包:sardine
最近需要对WebDav服务器进行操作,查找了一下,基于java的开发包主要有这几个: slide Jackrabbit sardine webdavclient4j 其中slide是apache的一个 ...
- python 实现一个双色球生成程序
最近学习Python的Random函数,就顺手写一个随机数的双色球程序,开发环境:python2.7 , 附上源代码如下: # _*_ coding:utf- _*_ import random qi ...
- 后缀crt证书转换
转换地址:https://www.chinassl.net/ssltools/convert-ssl.html 转换成功后点下载即可
- cocos2dx 3.3 场景切出时RenderTexture crash
在cocos2dx 3.3中下面myScene在切出时会存在概率性崩溃(代码作了最大程度简化,仅为说明问题): class CmyLayer:public Layer{ public: CmyLaye ...
- angularJS双向绑定和依赖反转
一.双向绑定: UI<-->数据 数据->UI (数据改变UI跟着变) UI->数据 (UI改变数据跟着变) 数据改变->UI改变原理: 监听数据是否改变,如果改变更新U ...
- [面试题] Find next higher number with same digits
Find next higher number with same digits. Example 1 : if num = 25468, o/p = 25486 Example 2 : if num ...
- 关于NavigationItem.rightBarButtonItem设置
转自:http://blog.csdn.net/zhuzhihai1988/article/details/7701998 第一种: UIImage *searchimage=[UIImage ima ...