В основу предлагаемой вниманию читателей книги легли записки семестрового курса лекций, читавшегося автором в течение нескольких лет первокурсникам факультета математики Высшей школы экономики. В курс включены начальные сведения о перечислительных задачах, о графах и их инвариантах, о конечных автоматах. Автор стремился связать изучаемый материал с тем, который излагается при изучении других предметов - в первую очередь, алгебры и математического анализа. В книге содержится большое количество задач, многие из которых снабжены решениями. Книга предназначена для студентов, изучающих математику и информатику, и преподавателей этих же предметов.