Sefism is free for learners. We are here to help you grow, one step at a time.Join for free
Sefism.

Roadmap · Foundations

DSA and problem solving (Java)

Opens with credits

For developers and students who can write code but freeze when a problem has no obvious library call. By the end you reason about cost before coding, pick the right data structure, recognise common problem shapes, and work an unfamiliar problem to a correct, efficient solution under time pressure, which also carries you through coding rounds.

Curated by Tauseef Fayyaz8 stages, 52 topics~14 months at a few hours a week

By the end, you will be able to

  • State the time and space complexity of your own code and spot the quadratic loop before it ships
  • Implement lists, stacks, queues, hash maps, heaps, trees and graphs from scratch and explain their costs
  • Name the pattern behind an unseen problem (sliding window, two pointers, BFS, backtracking, dynamic programming and more) and apply it
  • Solve a medium problem in about 35 minutes, with a brute force first, an optimised version after, and edge cases tested

The path

8 stages, in the order to learn them. Open one to start.

  1. 1Complexity and Big-OLearn to say what a piece of code costs in time and memory before you run it. Every later stage is about trading one cost for another, so this is the vocabulary for all of it.6 topics · ~3 weeks
  2. 2Arrays, hashing, linked lists, stacks and queuesLearn the linear structures and hash maps that most problems are built on, and exactly what your language gives you for each. Counting, grouping and lookup problems all start here.6 topics · ~2 months
  3. Recursion, sorting and searchingLearn to trust recursion, then use it to understand the classic sorts and binary search. Divide and conquer starts here and comes back in trees, graphs, backtracking and dynamic programming.6 topics · ~6 weeksOpens with credits
  4. Trees and heapsHierarchical structures and the traversals that answer most questions about them, plus heaps for anything that needs the smallest or largest item fast. Most tree problems are one recursive function.6 topics · ~7 weeksOpens with credits
  5. GraphsModel relationships as nodes and edges, then search, order and connect them. Many problems that look like grids, schedules or dependency lists are graph problems in disguise.6 topics · ~7 weeksOpens with credits
  6. Coding patternsTurn the structures and algorithms you know into a toolkit of recognisable problem shapes. This is the stage where unfamiliar problems start to feel familiar, because you see the pattern before the details.10 topics · ~3 monthsOpens with credits
  7. Dynamic programmingLearn dynamic programming as recursion plus a cache, then group problems into a few families you can recognise. It looks like the hardest topic mostly because people start from the table instead of the recursion.6 topics · ~2 monthsOpens with credits
  8. Timed practice and coding-round habitsTest everything with mixed, timed problems where the topic is not given to you, and build the habits that make you reliable under a clock: clarify, plan, talk, test and analyse.6 topics · ~2 monthsOpens with credits
Keep reading

6 more stages, 40 more topics, free with an account.

You have seen the open stages of the DSA and problem solving roadmap. Every topic it covers is listed above, and an account opens the rest: what each topic means, a question to check yourself, the courses, the practice and Tauseef's advice for every stage. Early access is open: sign up and your account is active shortly after.

Everything here is free to learn from. A few things, like adding a roadmap, keeping a cheat sheet or asking Tauseef a question, use credits. You get 15 when you join, your first roadmap is free, and if you are learning seriously and run out, you can ask for more. Credits only make sure the platform goes to people who are actually learning.

Picked from the other libraries by shared topics.

Work with me

Stuck on something specific?

Writing only gets you so far. If you want an answer to your situation rather than the general case, book a session and we will work through it together. Sessions are free for approved Sefism members, and a few slots open each week.

  • 1:1 Mentorship
  • Fresh Graduate Mentorship
  • Career Guidance

Brand deals, promos and partnerships: tauseeffayyaz@gmail.com