Алгоритмическая подготовка, осведомленность и эрудиция — это ключевые достоинства программиста, нацеленного на развитие, карьерный рост, а также рассчитывающего быстро находить решения как для рутинных, так и для нетривиальных задач.
В настоящее время алгоритмы в университетском курсе преподаются в основном на двух языках программирования — C++ и Python. Фундаментальные книги по алгоритмам найдутся в библиотеке любого серьезного программиста, однако не так много найдется простых алгоритмических книг, дающих базовое представление о джентльменском наборе алгоритмов и позволяющих сразу перейти к их реализации. Именно эту нишу и заполняет предлагаемая книга.
Вы изучите:
• генерацию случайных чисел на примере броска игральной кости,
• работу с прямоугольными координатами на примере игры «Ферзя в угол»,
• эвристику на примере игры «Морской бой»,
• рекурсивный перебор на примере игры «Калах»,
• деревья решений на примере игры «Угадай животное»
и другое
Алгоритмы предлагаются в порядке усложнения и могут быть использованы как для обучения и самообучения, так и для подготовки к собеседованиям, а также для решения несложных задач при разработке реальных проектов, например для проверки концепций, прототипирования логики и непосредственно для программирования простых игр с графическим пользовательским интерфейсом.