У 2 році видання однієї з найвідоміших книг з програмування розглянуте використання структур даних і алгоритмів. Алгоритми — це основа програмування, яка визначає, як розроблене ПЗ буде застосувати структури даних. На яснених і елементарних програмних прикладах автор роз'яснює цю складну тему, пропонуючи читачам створити власні програми
та на практиці вивчити отримані знання. Приклади, які розглядаються написані мовою
Java, хоча для вивчення матеріалу читачеві не потрібно добре знати його — вистачить лише володіти будь-якою мовою програмування, наприклад C. У першій частині книги представлено введення в алгоритмізацію та структури даних, а також містить додавання основ об'єктноорієнтованого програмування. Наступні частини віддані різноманітним алгоритмам і структурам даних, які розглядаються від простого до складного: сортування, абстрактні типи даних, пов'язані списки, рекурсія, деревоподібні структури даних, хешування, піраміди, графи. Подаються рекомендації щодо застосування алгоритмів і вибору тієї чи іншої структури даних залежно від поставленого завдання