Algorithm 理解河内塔的递归规则

Algorithm 理解河内塔的递归规则,algorithm,data-structures,towers-of-hanoi,Algorithm,Data Structures,Towers Of Hanoi,我是数据结构和算法的初学者,最近遇到了河内算法塔。我看到了河内塔规则(递归方法)和冲突的标准方式之间的冲突,我无法理解: 根据标准规则: 在任何给定时间,塔之间只能移动一个磁盘 只能移除“顶部”磁盘 没有大的磁盘可以放在小磁盘上 但是根据递归方法: 将n-1个磁盘从源位置移动到辅助位置 将第n个磁盘从源移动到目标 将n-1个磁盘从aux移动到目标 如您所见,这两种方法的第一条规则和第二条规则之间存在差异。为了帮助您理解第二种方法的含义,当它说将n-1个磁盘从源位置移动到辅助位置时,这意味着从源位

我是数据结构和算法的初学者,最近遇到了河内算法塔。我看到了河内塔规则(递归方法)和冲突的标准方式之间的冲突,我无法理解:

根据标准规则:

  • 在任何给定时间,塔之间只能移动一个磁盘
  • 只能移除“顶部”磁盘
  • 没有大的磁盘可以放在小磁盘上
  • 但是根据递归方法:

  • 将n-1个磁盘从源位置移动到辅助位置
  • 将第n个磁盘从源移动到目标
  • 将n-1个磁盘从aux移动到目标

  • 如您所见,这两种方法的第一条规则和第二条规则之间存在差异。

    为了帮助您理解第二种方法的含义,当它说将n-1个磁盘从源位置移动到辅助位置时,这意味着从源位置的顶部移动n-1次,然后将顶部磁盘移动到辅助位置。因此,一次只移动一个磁盘,每次都会移除顶部的磁盘。然后,第n个磁盘现在位于顶部,因此可以将其移动到目标位置。现在您可以重复步骤3。

    在第二种方法中,它们不会一次全部移动。谢谢您的帮助。请告诉我这个算法在现实生活中是如何使用的。