← All recursion topics
Tower of Hanoi
ActiveReturned
towers
move n-1 out of the way, move disk n, move n-1 back on
3
2
1
B
C
pseudocode
hanoi(n, from, to, via)if n == 0: returnhanoi(n-1, from, via, to)move disk n: from -> tohanoi(n-1, via, to, from)
recursion tree
every call branches, every return climbs back
Frame 1 / 60
Call hanoi(3, A→C)
start
4
n: 1–4