Книга представляет собой третью часть серии учебных пособий по программированию. В отличие от большинства аналогичных изданий, в ней представлены два языка программирования высокого уровня – Python и С++. Пособие посвящено способам организации данных и алгоритмам их обработки. Рассмотрены различные методы сортировки массивов, сравнивается их эффективность. Изучается работа с текстовыми и двоичными файлами. Приведены примеры использования структур данных – словарей, стеков, очередей, деревьев, графов – при решении практических задач. Рассматривается метод динамического программирования и его применение в задачах комбинаторики, оптимизации и теории игр. После каждого параграфа приводится большое число заданий для самостоятельного выполнения разной сложности и вариантов проектных работ. Пособие предназначено для учащихся средней школы.