【第二周】项目3-汉诺塔程序
来源:互联网 发布:淘宝拍卖的房子利弊 编辑:程序博客网 时间:2024/05/20 16:14
/* *Copyright (c) 2017,烟台大学计算机与控制工程学院 *All rights reserved. *文件名称: *作 者:高兆港 *版 本 号:v1.0 * (2) 用递归算法求解汉诺塔问题,其复杂度可以求得为O(2n),是指数级的算法。当盘子数为n个时,需要移动的次数是f(n)=2n−1。*/
汉诺塔程序
#include <stdio.h>#define discCount 4long move(int, char, char,char);int main(){ long count; count=move(discCount,'A','B','C'); printf("%d个盘子需要移动%ld次\n", discCount, count); return 0;}long move(int n, char A, char B,char C){ long c1,c2; if(n==1) return 1; else { c1=move(n-1,A,C,B); c2=move(n-1,B,A,C); return c1+c2+1; }}总结
通过此程序,体验算法复杂度在日常写代码中的重要性,对于一个合格的程序员,降低算法复杂度时必须要做的。
阅读全文
0 0
- 第二周项目3—汉诺塔程序
- 【第二周】项目3-汉诺塔程序
- 第二周 项目3 汉诺塔程序
- 第二周项目3—汉诺塔程序(2)
- 第二周 项目3(2) - 体验复杂度-汉诺塔程序
- 第二周项目3(2)---汉诺塔程序
- 第二周项目三—汉诺塔程序
- 第二周项目简短程序
- 第二周项目简短程序
- 第二周项目3-汉诺塔
- 第二周-项目3-汉诺塔
- 第二周项目3--汉诺塔
- 第二周项目三C/C++汉诺塔程序
- 第二周项目3---程序的多文件组织
- 第二周项目 3 程序的多文件组织
- 第二周项目3-程序的多文件组织
- 第二周项目3的程序1——复杂度
- 第二周 项目3的程序——复杂度
- 版本更新
- C++
- 观察者模式在电话中的应用
- Mysql数据库操作(六)----单表查询练习
- 交换两个整型变量的值
- 【第二周】项目3-汉诺塔程序
- 在网络中,带宽MB可以写成Mb吗?
- ES6-proxy
- Leetcode 题解系列(一)
- 2017 ACM/ICPC Asia Regional Qingdao Online:1008 Chinese Zodiac
- Linux用PXE自动化安装系统和制作引导盘
- 设备注册与驱动注册
- MySQL 高可用架构之MMM
- 求解最短路径Bellman_Ford 算法优化版——结合队列