汉诺塔问题递归算法求解
2015-10-17 11:13
387 查看
#include<iostream> void move(int n, char from, char to){ std::cout << "move the " << n << " from " << from << " to " << to << std::endl; } void Hanoi(int n, char from, char to, char by){ if (n >= 3){ Hanoi(n - 1, from, by, to); move(n, from, to); Hanoi(n - 1, by, to, from);<span id="transmark"></span> } else if (n == 1){ move(n, from, to); } else if (n == 2){ move(n - 1, from, by); move(n, from, to); move(n - 1, by, to); } } int main(void){ int n = 5; //n为汉诺塔的层数 Hanoi(n, 'A', 'C', 'B'); return 0; }
相关文章推荐
- unity之通知中心
- 学习prototypejs中的继承实现机制(一): Object.extend()、Class.create()、Class#addMethods()的使用
- Quarts 示例2
- 条理清晰的搭建SSH环境之整合Hibernate和Spring
- SQL AUTO INCREMENT 字段 高级教程
- Spring mvc中@Requestmapping再探
- html5d的indexDB使用
- 大数据的排序策略
- 实现截屏并存储在本地
- 共享一些毕业设计论文
- java学习——Jstl标签库大全
- LeetCode解题报告--Swap Nodes in Pairs
- 众筹出版《介绍用Java编程》一书
- “康熙来了”要停播了,含泪回顾“康熙来了”十年记:最好的时候
- uboot 显示nandflash中的图片
- html5中sql 使用
- C++类overlode、override和overwrite详细解释
- apk安装故障INSTALL_FAILED_INSUFFICIENT_STORAGE
- Win10 Mobile《电话》新增贴心功能:去电接听震动提醒
- 条理清晰的搭建SSH环境之整合Struts和Spring