Ханойская башня Python: рекурсивное решение головоломки

Вот пример реализации задачи Ханойской башни на Python:

def tower_of_hanoi(n, source, destination, auxiliary):
    if n > 0:
        # Move n-1 disks from source to auxiliary peg
        tower_of_hanoi(n-1, source, auxiliary, destination)

        # Move the nth disk from source to destination peg
        print(f"Move disk {n} from {source} to {destination}")

        # Move the n-1 disks from auxiliary to destination peg
        tower_of_hanoi(n-1, auxiliary, destination, source)
# Example usage
tower_of_hanoi(3, 'A', 'C', 'B')

Этот код использует рекурсию для решения проблемы Ханойской башни. Функция tower_of_hanoiпринимает четыре параметра: nпредставляет количество дисков, source— имя исходной привязки, назначение— это имя целевой привязки, а auxiliary— имя вспомогательной привязки. Функция перемещает диски nиз исходной привязки в целевую, используя вспомогательную привязку.

В примере использования tower_of_hanoi(3, 'A', 'C', 'B')будет напечатана последовательность ходов, необходимая для решения задачи Ханойской башни с 3 дисками., где A— исходная привязка, C— целевая привязка, а B— вспомогательная привязка.