Купить бумажную книгу и читать
По кнопке выше можно купить бумажные варианты этой книги и похожих книг на сайте интернет-магазина "Буквоед".
Using the button above you can buy paper versions of this book and similar books on the website of the "Bookvoed" online store.
Реклама. ООО «Новый Книжный Центр», ИНН: 7710422909, erid: 5jtCeReLm1S3Xx3LfAELCUa.
Автор: Рубанцев Валерий
Название: Как решать головоломные задачи на компьютере: Нетривиальные головоломки для программистов на языке C# (Промо книги)
Издательство: RVGames
Год: 2013
Формат: PDF
Размер: 12 Mb
Для сайта:
В книге подробно рассматривается решение головоломных и комбинаторных задач на языке C#
Исходные коды прилагаются!
Многие головоломки – это совсем не тривиальные программистские задачи! Недаром ими занимались и занимаются серьёзные учёные. Достаточно назвать Леонарда Эйлера, Карла-Фридриха Гаусса, Эжена Шарля Каталана и классика программирования Дональда Кнута, чтобы доказать это утверждение.
Решению многих исторических головоломок посвящена моя книга Как решать комбинаторные задачи на компьютере. Там, в частности, рассматриваются:
- Считалка Иосифа Флавия – обсуждается в книге Дональда Кнута и соавторов Concrete Mathematics (Graham, Knuth, Patashnik), страницы 8-20.
- Головоломка Дьюдени о представлении сотни – подробно анализируется в книге Дональда Кнута Искусство программирования, том 4, выпуск 4.
- Генерирование случайных латинских квадратов по алгоритмам Джона Байерса. А теорию построения латинских квадратов разработал великий швейцарский учёный Леонард Эйлер.
- Расстановка ферзей на шахматной доске – эту задачу решал великий немецкий математик Карл-Фридрих Гаусс.
А в этой книге мы будем решать японскую головоломку судоку, для которой Дональд Кнут придумал алгоритм Dancing Links, описанный им в статье с тем же названием.
Насколько мне известно, единственная книга на русском языке (и то в переводе с французского), хоть сколько-нибудь систематически описывающая решение головоломок на компьютере, - это книга Жака Арсака Программирование игр и головоломок, выпущенная издательством Наука в 1990 году. Однако в ней рассматриваются классические, давно известные головоломки – Ханойские башни, расстановка ферзей на шахматной доске, криптарифмы, прыгающие лягушки, лабиринт, солитер и пентамино. Я же выбрал в качестве примеров современные и очень популярные во всём мире головоломки – словесные, числовые, логические и комбинаторные.
Думаю, что программистам на языке C# будет интересно и полезно решить с помощью компьютера такие головоломки:
· Магические квадраты (Magic squares)
· Euro-Tableau (Евро-табло)
· Voisinage (Соседство)
· Расставить числа – Rechenquadrat; Atomium (Kreisrechnen); Multiplikationsrätsel; Числовое колесо (Zahlenrad); Summennetz; 1,2,3,4,5,6.
· Буквенное лото, Отгадать слово
· Словоскоп (Word Search Puzzle, Wörtersuchen)
· Домино-пасьянс (Domino Puzzle), Квадрильи
· Крисс-кросс, Кроссворд, Чайнворд
· Сквэрворд (Squareword)
· Диаго, Диаго-плюс (Diago)
· Судоку (Sudoku)
· Gebiete (Области, Gebietssummen)
· Кен-кен (KENKEN, KenDoku)
· Какуро (Kakuro, Kreuzsummenrätsel)
· Хитори (Hitori)
· Фобидоши (Fobidoshi)
· Лабиринт-алфавит (Zahlenschlange)
· Змейки
· Японский кроссворд (Edel, Нонограмма, Nonogram, Paint-by-numbers, Japanese puzzle, pic-a-pix, griddlers, Hanjie)
Система «домашних» заданий позволит укрепить навыки программирования при самостоятельном решении таких головоломок:
· Сколько номеров?
· Криптарифмы (числовые ребусы)
· Пирамида
· Rechenproblem
· Symbolrätsel
· Кроссворд с выражениями
· Числа в «коробках»
· Муравейник
· 13 кружков
· Королевская балда
· Футошики (Futoshiki, Больше-меньше)
· Sudoku X
· Судоку-аргайл
· Судоку-астериск
· Судоку-жирандоль
· Судоку-Center Dot
· Судоку-убийца (Killer Sudoku, сум-до-ку)
· Аруконе (Arukone)
· Филиппинский кроссворд (Link-a-Pix, Paint by pairs)
Основной метод решения головоломных задач – как представленных в этой книге, так и многих других – перебор с возвратами (поиск в глубину, DFS, backtracking). Однако без серьёзного анализа конкретной головоломки обычно не удаётся решить её за разумное время. Поэтому решение всех задач предваряет разработка достаточно эффективного алгоритма, а затем подробно обсуждается его реализация на языке Си-шарп. Здесь вы узнаете:
· как представить информацию о задаче в файле на диске;
· какие типы данных выбрать для хранения данных в приложении;
· как показать условие задачи и процесс её решения на экране;
· как сохранить найденные решения на диске;
· как не только решать, но и составлять свои собственные задачи.
Все приложения написаны на языке Си-шарп, который идеально подходит для решения головоломных задач, но исходный код без труда может быть переведён на любой другой современный язык программирования.
Скачать:
12.3 Mb Книга "Как решать головоломные задачи на компьютере. Нетривиальные головоломки для программистов на языке C#" в формате PDF + Исходные коды программ
Несколько скриншотов работающих приложений:
Купить бумажную книгу или электронную версию книги и скачать
По кнопке выше можно купить бумажные варианты этой книги и похожих книг на сайте интернет-магазина "Буквоед".
Using the button above you can buy paper versions of this book and similar books on the website of the "Bookvoed" online store.
Реклама. ООО «Новый Книжный Центр», ИНН: 7710422909, erid: 5jtCeReLm1S3Xx3LfAELCUa.
Дата создания страницы: