I have never really focussed much on solving leetcode type problems as a regular habit. Mostly I just revise and solve enough problems when it is needed such as preparing for an interview so there was never a need for practicing leetcode problems on a daily basis.

Now I would like to get in the long-awaited habit of regularly solving leetcode and in general algorithmic programming challenges.

I have solved some 100 odd problems on leetcode but my plan is to start solving more questions from now on and improve the tally drastically in a few weeks.

The process I’ll be following is to pick one topic from Data Structures and Algorithms theory and revisit and revise its fundamentals. Then I’ll check out the problems of the topic from the EPI (Elements of Programming Interviews - Python & C++ Editions) book. I use this book for its concise overview and high quality of questions and solutions. It also has an offline judge (EPI Judge) which is useful to practice the problem solution and its correctness.

Post that I’ll be filtering questions on leetcode for the topic and solving a few of them for few days straight to maximize the number of questions and cover most of the patterns.

This process I feel would be a good template to follow in general to solve algorithmic problems on platforms such as leetcode and cover all the bases.