12-Week Java + DSA Roadmap
Weeks 1-2: Java Basics
Topics:
- Hello World, variables, input/output
- Data types, typecasting
- If-else, switch
- Loops (for, while, do-while)
- Functions & scope
Resources:
- Apna College Java Playlist
- HackerRank Java Basics
Weeks 3-4: Object-Oriented Programming (OOP)
Topics:
- Classes, objects, constructors
- Inheritance, encapsulation, abstraction, polymorphism
- this keyword, static, access modifiers
Resources:
- Apna College or CodeWithHarry OOP sections
- GFG Java OOP
Weeks 5-6: Arrays, Strings, and Basic Recursion
Topics:
- 1D & 2D arrays
- Searching (linear, binary)
- Sorting (bubble, selection, insertion)
- Strings in Java
- Recursion basics
Resources:
- GFG Arrays
- String Problems GFG
- Apna College DSA playlist
Weeks 7-8: ArrayList, Linked Lists, Stack & Queue
Topics:
- Java Collections (ArrayList, LinkedList)
- Linked Lists (Singly, Doubly)
- Stack (Java Stack class + array implementation)
- Queue (Queue, Deque)
Resources:
- GFG Linked List in Java
- LeetCode
12-Week Java + DSA Roadmap
Weeks 9-10: Trees & Binary Search Trees (BST)
Topics:
- Tree basics: Node class, construction
- Preorder, Inorder, Postorder traversal
- Level order
- BST insertion, deletion, search
Resources:
- Apna College Tree playlist
- GFG Tree section
Weeks 11-12: Graphs, Hashing, DP
Topics:
- Graph representation, BFS, DFS
- HashMap, HashSet
- Dynamic Programming: Fibonacci, knapsack, LIS, etc.
Resources:
- GFG Graph in Java
- LeetCode DSA practice
Daily Study Plan:
Time | Focus
------------------
1 hour | Learn new concept (video/tutorial)
1 hour | Code examples & notes
1 hour | Practice problems (LeetCode/GFG)