【发布时间】:2021-02-21 10:45:20
【问题描述】:
我今天正在做一个编码练习。完成考试后,我检查了结果,遇到了一个问题,问题陈述如下:
给定河内塔问题中的 4 个磁盘,递归算法最多调用相同的函数 ___ 次。
A. 10
B. 16
C. 22
D. 31
我唯一知道的是我选择了 B. 16,我错了。
我在互联网上搜索发现它应该是 2n - 1 次或 15 次。
但是,它不在选项中。
哪个选项是正确的?
任何建议将不胜感激。
谢谢。
【问题讨论】:
-
也许他们的意思是我说的“最多”。 2^n -1 对于 4 个磁盘是 15 是解决难题所需的“最小”移动,但您可以在序列中添加不必要的步骤。虽然不确定正确答案。
标签: algorithm data-structures divide-and-conquer