Вообще лучше использовать методические материалы (они же "старые добрые книги"), чем образовательные курсы. Есть книжки с прекрасным описанием базовых (и не только) существующих алгоритмов для новичков ("Грокаем алгоритмы", например, там наличие интерактивных картинок помогает заинтересовать новичков даже при наличии сложных материалов), есть аналогичные для некоторых ЯП (тут конкретизировать не получится, потому что сколько языков - столько и книг). Очные курсы при IT-компаниях стоят на втором плане, так как обычно порог вхождения у них выше, но качество чаще всего на высоком уровне. Далее идут онлайн-курсы - их многообразие позволяет подобрать программу под свой уровень знаний, но вот качество преподавания может страдать.