Описание тега towers-of-hanoi

Простая головоломка с перемещением дисков между стержнями. Обычно используется как ката / упражнение по программированию и часто ставится как домашнее задание при введении концепции рекурсии.
2 ответа

Линейные башни Ханоя

У меня есть вопрос о линейных Ханойских башнях. Я реализовал это в C++, но пытаюсь сделать то же самое, используя хвостовой рекурсивный или итеративный метод. У меня проблемы с моим алгоритмом. Этот фрагмент кода показывает передачу блоков из средне…
20 окт '09 в 17:47
1 ответ

Почему эта программа Ханойской башни работает?

Я новичок в кодировании, и я работал над несколькими простыми мини-проектами, чтобы лучше познакомиться с Java. Когда я столкнулся с этим кодом Ханойской башни. public class TowersOfHanoi { public void solve(int n, String start, String auxiliary, St…
02 окт '17 в 02:24
1 ответ

Башня Ханоя первоначальной конфигурации?

Я читаю код, который мой друг написал для своего решения Ханойской башни. Но мне трудно понять, что делает его код, так как я не понимаю его конфигурацию инициализации и конечную конфигурацию. def T(init, final): if len(init) == 0: return if init[0]…
21 апр '17 в 20:49
1 ответ

Идиоматический функциональный способ перемещения диска в Towers of Hanoi

Я изучаю Scheme, и в качестве примера я делаю проверку решения (а не решателя) для Towers of Hanoi. Я хочу использовать чисто функциональный стиль (просто для того, чтобы войти в образ мыслей) и представляю башню в виде простого списка из трех списк…
1 ответ

Реализация Ханойского C++ с использованием стеков

Я написал следующий код для рекурсивного алгоритма ToH со стеками и не могу понять, почему он не работает. Нет ошибок компиляции, но как только программа действительно начинает работать, она немного "думает", а затем вылетает. Есть идеи? Соответству…
12 мар '18 в 06:22
1 ответ

Башни Ханоя с более чем 3 колышками

Я понимаю стандартное рекурсивное решение для Ханойских башен здесь. Но что, если у меня есть переменное количество колышков и дисков? Будет ли решение, предоставленное здесь, всегда быть кратчайшим (или самым быстрым) путем от одной башни к другой?…
01 июл '13 в 21:39
3 ответа

Счетные башни Ханоя-Ява

Я тестирую программу Towers of Hanoi. Мне уже помогли измерить время программы, но это не то, чего хотел мой профессор, он хотел посчитать итерации. Я не могу получить его, и мне нужно "общее количество ходов", которое запустит моя программа, но она…
11 мар '17 в 15:48
2 ответа

Как работает рекурсивный алгоритм для Ханойских Башен?

Это код из книги, в которой я объясняю рекурсию. Проблема в том, что я не понимаю шаги, предпринятые программой: var hanoi = function(disc,src,aux,dst) { if (disc > 0) { hanoi(disc - 1,src,dst,aux); document.write("Move disc " + disc + " from " +…
04 авг '11 в 19:46
1 ответ

Циклическая (однонаправленная) Ханойская башня Предложения?

Вот код Python, который я написал для задачи о Ханойской башне, где башня должна быть перенесена с левого колышка на средний, используя правый колышек в качестве запасного: def hanoi(n, origin = "1", destination = "2", spare = "3"): if n == 1: print…
24 ноя '12 в 14:28
0 ответов

Рекомендуемый переход от FSM к ML

Я немного занимался машинным обучением с tenorflow и tflearn и решил вернуться к старой проблеме. Конкретная проблема заключается в написании программы, которая может эффективно решить Ханойские башни из любого штата в любой другой штат. Ранее я дел…
1 ответ

Нуждается в объяснении того, как работает мой рекурсивный код Ханойской башни

Я только начинаю рекурсию и думаю, что у меня есть общее представление о том, как это работает. У меня есть этот код для проблемы Ханойской башни, и я целый час смотрю на него, пытаясь понять, что именно он делает. Метод 'moveDisks' сбивает меня с т…
12 фев '16 в 17:58
2 ответа

Аргумент "n-1" вызова подпрограммы дает синтаксическую ошибку

Я хочу программировать решатель Ханойской башни в ABAP. Вот мой текущий код: FORM SOLVE USING s1 TYPE c s2 TYPE c s3 TYPE c n TYPE i. IF n = 1. "move disc from tower X to tower Y" WRITE:/ text-001, text-002, s1, text-003, text-002, s3. ELSE. PERFORM…
18 сен '18 в 12:22
0 ответов

Towers of Hanoi - помощь пользователю в середине игры

Я успешно построил игру Tower of Hanoi в Java с интерактивностью пользователя. Однако я также хочу добавить функцию, при которой, если пользователь запрашивает подсказку, программа делает следующий шаг для пользователя наиболее эффективным способом.…
10 фев '14 в 03:04
1 ответ

Как искоренить "Нет" с конца рекурсии

У меня есть следующий код: n=input('How many disks?') def MoveTower(n, source='A', dest='C', store='B'): if n==1: print source + '->' + dest else: MoveTower(n-1, source, store, dest) MoveTower(1, source, dest, store) MoveTower(n-1, store, dest, s…
11 апр '13 в 13:07
4 ответа

Использование аргументов командной строки для завершенной программы Ханой?

Я только что закончил свои программы Ханойских башен. Он работает безупречно, за исключением того, что теперь мне нужно как-то сделать так, чтобы моя программа могла читать аргументы командной строки (и выдавать те же результаты, что и в моей програ…
1 ответ

Алгоритм анализа - рекуррентное уравнение (Ханойская башня)

Я видел этот рекурсивный алгоритм для решения Ханойской башни в Википедии. Может ли кто-нибудь объяснить мне, как я получаю уравнение повторения этого алгоритма? Рекурсивное решение пометьте колышки A, B, C - эти ярлыки могут перемещаться на разных …
31 окт '13 в 11:10
1 ответ

Использование pygame.time.wait() между обновлениями дисплея

В настоящее время я разрабатываю простую анимацию Ханойской башни в Pygame, которая должна показывать правильное решение Ханойской башни, передвигаясь по одной части в секунду. Однако, в моем алгоритме решения Ханоя я пытаюсь обновить отображение и …
03 дек '18 в 02:48
1 ответ

Башни Ханоя, используя Пролог Lists

Я знаю, что уже есть примеры программ, которые охватывают это, но мне нужно сделать башни Ханоя с 6 дисками определенным способом для назначения, и у меня возникли проблемы. Код у меня в настоящее время есть ниже: s([],[],[]). initial(s([1,2,3,4,5,6…
17 дек '18 в 11:37
2 ответа

Два рекурсивных называют без финиша (Ханойские башни)

Я запрограммировал эту функцию в haskell проблемы Ханойских Башен. Функция дает количество шагов от исходного стика до конечного стика с помощью только одного альтернативного стика. numStepsHanoi :: Integer -> Integer numStepsHanoi 0 = 0 numSteps…
26 окт '16 в 18:58
1 ответ

Почему моя рекурсивная функция с обещаниями ждет только один раз?

Я пытаюсь визуализировать проблему "Ханойская башня" и пытался использовать обещания, чтобы заставить функции ждать анимацию движения одного диска (которую я смоделировал с помощью setTimeout), прежде чем продолжить решение проблемы. Этот тест-код в…
10 янв '19 в 17:33