"Абстракция данных и решение задач на C++. Стены и зеркала" - читать интересную книгу автора (Каррано Ф.М., Причард Дж.Дж.)