Страница: 1 |
Решать эту задачу рекурсией весьма глупо. Поэтому если надо именно рекурсией, посмотри в книгах, это шаблонный пример. А если надо не рекурсией, то первый ход определяется четностью/нечетностью числа дисков, а остальные - однозначно: не возвращать последний ход и не класть больший диск на меньший. Рекурсия, мало того, что умирает от переполнения стека при небольшом количестве дисков, так еще и затуманивает мозги, мешая им думать над задачей. Страница: 1 |
Вопрос: Ханойские башни
Добавлено: 23.02.04 00:30
Автор вопроса:
Logot | ICQ: 305396405
Господа программисты, помогите решить задачу!
Задача решается с помощью рекурсии. Имеется 3 колышка, на первый колышек нанизаны, допустим 5 дисков,и нанизаны они так, что из размеры последовательно уменьшаются к вершине. Нужно переместить все диски с первого колышка на второй колышек при условии, что каждый раз берётся только по одному диску и больший диск никогда не должен находиться над меньшим диском. Временно диски можно размещать на третьем колышке.
Если это возможно, то решить задачу без использования массивов. Если не тяжело но вышлите мне решение этой задачи на E-mail Igor_b@ua.fm, в псевдокоде и в обычном коде, желательно на Visual Basic.Net.
Ответы
Всего ответов: 3
Номер ответа: 1
Автор ответа: Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #1
Добавлено: 23.02.04 01:55
Номер ответа: 2
Автор ответа: Logot
ICQ: 305396405
Вопросов: 9
Ответов: 28
Профиль | | #2
Добавлено: 23.02.04 23:41
Я учусь программированию, и именно в книге есть эта задача про Ханойские башни, которую нужно решить с помощью рекурсии, а ответ на эту задачу не предусмотрен (вообще нет ответов на задания в книге). Я уже неделю колупаюсь и никак не могу решить её. Помогите решить её хотя бы на псевдокоде. Учусь я по книге Х.М. Дейтел, П.Дж. Дейтел, Т.Р. Нието "Как программировать на Visual Basic.Net". Если есть лучшие книги по изучению VB.Net для начинающих, то подскажите какие?
Номер ответа: 3
Автор ответа: Artyom
Разработчик
Вопросов: 130
Ответов: 6602
Профиль | | #3
Добавлено: 24.02.04 08:55
Лучшая книга по изучению .NET - "Переход на VB .NET. Стратегии,
концепции, код", но увы, она далеко не для начинающих, скорее для тех,
кто уже съел собаку с VB6. Мне понравилось "Эффективное использование
VB .NET" Е. Петрусоса, там как раз с более низких материй объясняют, а
не философствуют о значении MS в жизни каждого человека и ее вине в
глобальном потеплении))