Home > Article > Backend Development > Implementing the Tower of Hanoi method under python
The Tower of Hanoi is an educational toy from an ancient Indian legend. The movement of the Tower of Hanoi can also be seen as a recursivefunction.
We number the columns a, b, c. Moving all the disks from a to c can be described as:
If a has only one disk, it can be moved directly to c;
If a has N disks, which can be regarded as a having 1 disk (chassis) + (N-1) disks. First, you need to move (N-1) disks to b, and then move the last part of a Move one disk to c, and then move (N-1) disks of b to c.
Please write a function, given the input n, a, b, c, print out the steps of movement:
move(n, a, b, c)
For example, input move(2, 'A ', 'B', 'C'), print out:
A –> B
A –> C
B –> C
Background information:
汉Tower of Hanoi: The Tower of Hanoi (also known as the Tower of Hanoi) is an educational toy derived from an ancient legend in India. When Brahma created the world, he made three diamond pillars. On one pillar, 64 gold discs were stacked in order of size from bottom to top. Brahma ordered the Brahmin to rearrange the disks on another pillar in order of size from the bottom. It is also stipulated that the disk cannot be enlarged on the small disk, and only one disk can be moved between the three pillars at a time.
The code is implemented as follows:
def move(n, a, b, c): if n==1: print a,'-->',c return else: move(n-1,a,c,b) #首先需要把 (N-1) 个圆盘移动到 b move(1,a,b,c) #将a的最后一个圆盘移动到c move(n-1,b,a,c) #再将b的(N-1)个圆盘移动到c move(4, 'A', 'B', 'C')
The above is the detailed content of Implementing the Tower of Hanoi method under python. For more information, please follow other related articles on the PHP Chinese website!