"Грокаем алгоритмы" очень поверхностная. В ней по большей части рассказывается, что такое алгоритмы и какие они бывают, а не разбор и обучение конкретным алгоритмам. Очень простая и в то же время доходчивая - "Структуры данных и алгоритмы" Роберта Лафоре. Правда, она для Java, причём древней версии, но это не очень важно, так как в большинстве учебников в этой области всё равно примеры на псевдокоде. Из классики, которую действительно многие советуют - "Алгоритмы" Стивена Скиены и "Алгоритмы Построение и анализ" Кормена. У Скиены, кстати, описан путь к написанию собственных алгоритмов.