Рекурсия в Python3
Дмитрий Анисов

Здравствуйте!) Помогите разобраться с рекурсией в данном примере на Python 3! Ни как не могу понять, как исполняется рекурсия в данном примере, можете подробнее расписать. Спасибо)
Как работает рекурсия в лёгких примерах, я понимаю, а тут сложновато разобраться в алгоритме (полностью понять), не смотря на простоту.

def hanoi(n,a,b,c):
    if n !=0:
        hanoi(n-1, a,c,b)
        print("Transfer a ring from",a,"to",c)
        hanoi(n-1,b,a,c)

hanoi(8,"a","b","c")
hanoi(3,"a","b","c")

(с тремя кольцами, дабы проще было разобраться, на 8 колец объяснение сложнее писать, чем на 3, поэтому можете написать с учётом 3х колец):)

P.S Пример является решением задачи "Ханойская башня"

1 чел.