[go: up one dir, main page]

0% found this document useful (0 votes)
84 views5 pages

90 Day DSA Plan Java

The document outlines a 90-day plan for intermediate programmers to enhance their Java and Data Structures and Algorithms (DSA) skills, focusing on preparation for service-based companies. It is divided into three phases: fundamentals and easy DSA, core DSA, and trees, graphs, and dynamic programming introduction, with specific topics and practice days scheduled for each week. Recommended platforms for practice and learning are also provided, along with a daily schedule suggestion for effective study.

Uploaded by

Akshay Sahu
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
84 views5 pages

90 Day DSA Plan Java

The document outlines a 90-day plan for intermediate programmers to enhance their Java and Data Structures and Algorithms (DSA) skills, focusing on preparation for service-based companies. It is divided into three phases: fundamentals and easy DSA, core DSA, and trees, graphs, and dynamic programming introduction, with specific topics and practice days scheduled for each week. Recommended platforms for practice and learning are also provided, along with a daily schedule suggestion for effective study.

Uploaded by

Akshay Sahu
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5

90-DAY DSA PLAN FOR SERVICE-BASED COMPANIES (JAVA FOCUSED)

> For intermediate programmers (basic Java clear, DSA weak). Goal is to become job-ready for

service-based companies in 90 days.

---

PHASE 1: FUNDAMENTALS + EASY DSA (Day 1 - 30)

Week 1: Java + Arrays + Strings

- Day 1: Java Input/Output, Loops, Pattern Problems

- Day 2: 1D Arrays - Traverse, Insert, Delete

- Day 3: Array Operations - Max, Min, Reverse, Rotate

- Day 4: Sorting Basics - Bubble, Selection, Insertion

- Day 5: Binary Search - Basic Problems

- Day 6: Strings - Basics, Palindrome, Reverse, Anagram

- Day 7: Revision (Day 1-6)

Week 2: More Arrays + Hashing

- Day 8: Two Pointers - Pair Sum, Remove Duplicates

- Day 9: Sliding Window - Max Subarray Sum

- Day 10: Prefix Sum - Range Sum, Subarray Sum

- Day 11: HashMap - Frequency Count, Majority Element

- Day 12: HashSet - Distinct Elements

- Day 13: Maths - Prime, GCD, Sieve

- Day 14: Revision (Day 8-13)


Week 3: Recursion + Matrix

- Day 15: Recursion - Factorial, Fibonacci, Power

- Day 16: Recursion - Subsets, String Combinations

- Day 17: Recursion - Backtracking Intro

- Day 18: Matrix - Basic Traversal

- Day 19: Matrix - Spiral, Transpose, Rotate

- Day 20: Practice Day (Easy Questions Mix)

- Day 21: Revision (Week 1-3 Summary)

---

PHASE 2: CORE DSA (Day 31 - 65)

Week 5: Linked List

- Day 31: Singly Linked List - Insert, Delete

- Day 32: Reverse LL, Middle Node

- Day 33: Detect Cycle - Floyd's Algo

- Day 34: Merge Two Sorted LL, Palindrome LL

- Day 35: Doubly Linked List

- Day 36: Practice LL Questions

- Day 37: Revision

Week 6: Stack + Queue

- Day 38: Stack using Array & Linked List

- Day 39: Infix to Postfix, Balanced Brackets

- Day 40: Next Greater Element


- Day 41: Queue - Array/LL Based

- Day 42: Circular Queue, Deque

- Day 43: Queue Problems - Reverse K elements

- Day 44: Revision

Week 7: Binary Search Advanced + Backtracking

- Day 45: Binary Search on Answer - Book Allocation

- Day 46: Aggressive Cows, Painter Partition

- Day 47: Backtracking - N-Queens

- Day 48: Backtracking - Rat in Maze

- Day 49: Sudoku Solver

- Day 50: Practice Day

- Day 51: Revision

Week 8: Bit Manipulation + Sorting Advanced

- Day 52: Bits - Count Set Bits, XOR Tricks

- Day 53: Bit Masking - Subsets

- Day 54: Merge Sort

- Day 55: Quick Sort

- Day 56: Count Inversions

- Day 57: Practice Sorting + Bits

- Day 58: Revision

---

PHASE 3: TREES, GRAPHS & DP INTRO (Day 66 - 90)


Week 9: Trees

- Day 66: Binary Tree - Inorder, Preorder, Postorder

- Day 67: Height, Diameter, Count Nodes

- Day 68: Balanced Tree, Mirror Tree

- Day 69: Practice Day (Trees)

Week 10: BST + Heap

- Day 70: BST - Insert, Delete, Search

- Day 71: Validate BST, Inorder Successor

- Day 72: Min/Max Heap, Heap Sort

- Day 73: K Largest Elements, Heapify

- Day 74: Practice Day (BST + Heap)

Week 11: Graphs + DP

- Day 75: Graph BFS, DFS

- Day 76: Detect Cycle (Directed + Undirected)

- Day 77: No. of Islands, Connected Components

- Day 78: Dijkstra's Algorithm

- Day 79: DP Intro - Fibonacci, Climbing Stairs

- Day 80: 0/1 Knapsack, Subset Sum

- Day 81: Practice Graphs + DP

Week 12: Final Placement Practice

- Day 82: GFG Placement 50 Qs - Set 1

- Day 83: GFG Placement 50 Qs - Set 2

- Day 84: GFG Placement 50 Qs - Set 3

- Day 85: InterviewBit Easy-Medium


- Day 86: CodeStudio Sheet Questions

- Day 87: Leetcode Top Interview Qs (Easy)

- Day 88: Leetcode Top Interview Qs (Medium)

- Day 89: Mock Test Day (1.5 hrs - Timed)

- Day 90: Final Revision + Weak Area Notes

---

Recommended Platforms

- Practice: Leetcode, GFG, InterviewBit, CodeStudio

- Learning: Apna College, Aditya Verma, CodeWithHarry

Daily Schedule Suggestion:

- 1 hr - Concept learning (video/notes)

- 2 hrs - Question solving (min 3-5 questions)

- 1 hr - Doubt review + note making

> Stick to this plan daily with 4 hrs/day dedication. In 90 days, you'll be confident and ready for any

service-based company coding round + interview.

You might also like