https://www.codingame.com/start - тут разные задачки, алгоритмы есть и т.д. если хочешь именно задачи решать. решения на многих языках прог можно писать.
https://www.codecademy.com/ - тут при регистрации есть неделя чтоб бесплатно проходить всё, что успеешь. Очень простые базовые вещи и начальная теория очень бегло.
Можно и самому придумывать себе задания, которые не знаешь как сделать, гуглить и пилить. Паттерны не выучишь, но много про ЖС узнаешь и руку набьешь