Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.04.2011, 23:27   #1
VadikV
Форумчанин
 
Аватар для VadikV
 
Регистрация: 08.01.2011
Сообщений: 226
По умолчанию Поиск с возвратами

Задали решение задачи "Ханойские башни".
Решить нужно алгоритмом "Поиск с возвратами". Сама реализация не представляет проблем. Проблема с выбором критериев возврата.
Поделитесь мыслями, плиз.

Идея алгоритма:
Есть правила перемещения кольца со стержня на стержень (кольцо можно ложить только меньшее на большее).
Случайным образом выбирается кольцо для перемещения и башня-получатель. Если перемещение удовлетворяет правилу - выполняется.
Безвозвратный поиск подразумевает, что в случае применения неподходящего правила, решение либо становится принципиально невозможным, либо процесс поиска значительно замедляется. Можно положить в основу алгоритма поиска следующую идею: если в текущем состоянии базы данных видно, что продолжая начатое, решение либо невозможно найти, либо этот поиск обещает быть слишком долгим, можно попробовать вернуться назад и попробовать другой пусть.

Любые мысли и идеи приветствуются. Я уже соберу их в одно целое и что-нибудь придумаю
icq 223-630-454
e-mail vysotskiy@list.ru
сайт http://www.big-library.net/
VadikV вне форума Ответить с цитированием
Старый 28.04.2011, 23:32   #2
Smitt&Wesson
Старожил
 
Аватар для Smitt&Wesson
 
Регистрация: 31.05.2010
Сообщений: 13,543
По умолчанию

. Типовая задача по рекурсивным вычислениям.
Если не справитесь самостоятельно. Контакты в подписи.
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder
Smitt&Wesson вне форума Ответить с цитированием
Старый 29.04.2011, 10:17   #3
VadikV
Форумчанин
 
Аватар для VadikV
 
Регистрация: 08.01.2011
Сообщений: 226
По умолчанию

Цитата:
Сообщение от Smitt&Wesson Посмотреть сообщение
. Типовая задача по рекурсивным вычислениям.
Если не справитесь самостоятельно. Контакты в подписи.
При чем тут рекурсия? Стандартными способами эту задачи решить нет проблем.
Тут другой подход. Перемещение на каждом шаге выбирается случайно. Каждое выполненное перемещение запоминается в стеке. Нужно на каком-то шаге определять нецелесообразность дальнейших перемещений в текущей ветки и делать откат для новой попытки. Вот и нужно узнать критерий определения этой целесообразности и до какой степени делать откаты в перемещениях.
icq 223-630-454
e-mail vysotskiy@list.ru
сайт http://www.big-library.net/
VadikV вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поиск по БД jaxik БД в Delphi 8 08.09.2010 03:41
поиск red-serg Помощь студентам 1 09.01.2009 22:20
Поиск в БД Karinka БД в Delphi 9 07.12.2008 16:25
Поиск Witaliy Общие вопросы Delphi 1 01.05.2008 18:42
Поиск MAKEDON Общие вопросы Delphi 2 22.02.2008 22:47