汉诺塔时间复杂度怎么求 求过程计算过程

如题所述

第1个回答  2014-01-02
假设移动n个圆盘需要f(n)次移动
首先考虑一个圆盘,只需一步就可以了 f(1)=1……①
现在考虑n个圆盘,假设开始圆盘在A柱,可以先把A柱的上面n-1个圆盘移到B,再将A剩下的一个移到C,最后将B的n-1个移到C。总共需要f(n)=2f(n-1)+1……②
根据①②两式,可求出f(n)=2^n-1 所以O(n)=2^n本回答被网友采纳
相似回答