Если я правильно понял автора вопроса, то ему интересно дальнейшее развитие в сторону middle/senior developer. С моей точки зрения, если разработчик хочет развиваться, то изучить базовые конструкции любого императивного языка для него не должно быть проблемой. Это меньше получаса на условные операторы, операторы цикла, итд.
Поскольку речь идет о достаточно базовых алгоритмах и соответствующей теории, то описание алгоритма будет понятно практически на любом языке (опять же, без крайностей). И Кормен, и Скиена в книгах, которые я привел ниже, используют псевдокод. Аналогично Макконнел. Окулов любит Паскаль. Какая разница, на чем оно в данном случае написано, если важно научиться понимать: как их строить, как анализировать, достоинства, недостатки? Если хочется попробовать в реальности, то это несложно, так как обычно все занимает не больше пары сотен строк, а самостоятельная реализация прокачает мозги и углубит понимание.
Поскольку речь идет о достаточно базовых алгоритмах и соответствующей теории, то описание алгоритма будет понятно практически на любом языке (опять же, без крайностей). И Кормен, и Скиена в книгах, которые я привел ниже, используют псевдокод. Аналогично Макконнел. Окулов любит Паскаль. Какая разница, на чем оно в данном случае написано, если важно научиться понимать: как их строить, как анализировать, достоинства, недостатки? Если хочется попробовать в реальности, то это несложно, так как обычно все занимает не больше пары сотен строк, а самостоятельная реализация прокачает мозги и углубит понимание.