it is helpful is most cases, but it has to be just a tool not a goal. a developer can reach the same thinking level just by working on its personal projects and by searching and reading about algorithms. However timed problems improve rapidity, which enterprise-oriented skill.
I agree, whole purpose of those learning is to improve thinking ability and problem solving skills, but it also intention of learner, which makes difference.