Особая проблема Ханоя - PullRequest
       4

Особая проблема Ханоя

3 голосов
/ 24 декабря 2010

Предположим, что существует 2 * n дисков. Как можно решить проблему Ханоя, если нечетные числа являются дисками на панели "A", а четные диски - на панели "B"?Пожалуйста, дайте мне знать, если вам нужна дополнительная информация.

Спасибо

1 Ответ

6 голосов
/ 24 декабря 2010

переместите диск 1 на диск 2, затем переместите получившийся «правильный» Ханойский буксир 1,2 на диск 3, используя классический алгоритм.Затем переместите нужную башню 1,2,3 на 4. Продолжайте, пока не получите полную башню, затем используйте классический алгоритм для перемещения к пункту назначения.

EDIT1:

Пример (не завершен)

1   2
3   4
5   6   
.   .   .

    1
    2
3   4
5   6   
.   .   .

    1
    2
    4
5   6   3
.   .   .

    2
1   4   
5   6   3
.   .   .

1   4   2   
5   6   3
.   .   .

        1
    4   2   
5   6   3
.   .   .

        1
4       2   
5   6   3
.   .   .

Это любопытно, потому что последний шаг - это немного оптимизации;то, что я описал, будет пытаться построить 1-2-3-4-6, но мы перейдем непосредственно к зданию 1-2-3-4-5.Это, вероятно, что-то значит.

...