算法 - 其它 汉诺塔 有三个柱子,分别为 from、buffer、to。需要将 from 上的圆盘全部移动到 to 上,并且要保证小圆盘始终在大圆盘上。 这是一个经典的递归问题,分为三步求解: ① 将 n-1 个圆盘从 from -\> buffer ② 将 1 个圆盘从 from -\> to ③ 将 n-1 个圆盘从 buffer -\> to 如果只有一个圆盘,那么只需要进行一次移动操作。 从上面的讨论可以知道,a n = 2 a n-1 + 1,显然 a n = 2 n - 1,n 个圆盘需要移动 2 n - 1 次。 哈夫曼编码 根据数据出现的频率对数据进行编码,从而压缩原始数据。