Рассматриваются значимые для практики задачи и алгоритмы на графах. Техника решения задач на графах, как правило, носит алгоритмический рекурсивный характер. В примерах решения алгоритмических задач выполняются способом заполнения данных. Для рекурсии такой подход позволяет понять суть алгоритма и увидеть его с точки зрения программной реализации. Остроумные приемы и находки авторов алгоритмов здесь играют важную роль. Сильной стороной курса является наличие обоснования и доказательства справедливости алгоритмов. Такие доказательства носят конструктивный характер и, как правило, составляют базовую часть алгоритма. К изучению предлагаются групповые свойства целых чисел как необходимый инструмент в практическом программировании. Даются достаточно полный их обзор и ряд приложений. В частности, шифрование с открытым ключом.