第二周项目三.2

xiaoxiao2021-02-28  17

/* 烟台大学计算机学院 文件名称:yc.cpp 作者:于琛 完成日期:2017年9月10日 问题描述:汉诺塔 */ #include <stdio.h> #define discCount 4 long 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; } }

结果图(盘子数分别为4,8,16,64):

知识点总结:可以看出盘子数为64时,程序运行的时间为5845.54亿年,地球在那时说不定早已消失。

学习心得:可以看出我们在设计算法时,时间复杂度应该着重考虑。

转载请注明原文地址: https://www.6miu.com/read-450071.html

最新回复(0)