|
1 |
| -# Complete Java + DSA Syllabus |
| 1 | +# <p align="center"> Complete Java + DSA Syllabus </p> |
2 | 2 |
|
3 |
| - |
4 |
| -## Syallbus... |
| 3 | +## Syallbus |
5 | 4 |
|
6 |
| -- Functions |
7 |
| - - Introduction |
| 5 | +- ### Functions |
8 | 6 | - Scoping in Java
|
9 | 7 | - Shadowing
|
10 | 8 | - Variable Length Arguments
|
11 | 9 | - Overloading
|
12 |
| -- Arrays |
13 |
| - - Introduction |
| 10 | +- ### Arrays |
14 | 11 | - Memory management
|
15 | 12 | - Input and Output
|
16 | 13 | - ArrayList Introduction
|
|
24 | 21 | - Selection Sort
|
25 | 22 | - Bubble Sort
|
26 | 23 | - Cyclic Sort
|
27 |
| -- Pattern questions |
28 |
| -- Strings |
29 |
| - - Introduction |
| 24 | +- ### Pattern questions(Self Practice) |
| 25 | +- ### Strings |
30 | 26 | - How Strings work
|
31 | 27 | - Comparison of methods
|
32 | 28 | - Operations in Strings
|
33 | 29 | - StringBuilder in java
|
34 |
| -- Maths for DSA |
35 |
| - - Introduction |
| 30 | +- ### Maths for DSA |
36 | 31 | - Complete Bitwise Operators
|
37 | 32 | - Range of numbers
|
38 | 33 | - Prime numbers
|
|
43 | 38 | - Number Theory
|
44 | 39 | - HCF / LCM
|
45 | 40 | - Euclidean algorithm
|
46 |
| -- Recursion |
47 |
| - - Introduction |
| 41 | +- ### Recursion |
48 | 42 | - Flow of recursive programs - stack
|
49 | 43 | - Tree building of function calls
|
50 | 44 | - Tail recursion
|
|
61 | 55 | - Recursion Array Problems
|
62 | 56 | - Recursion Pattern Problems
|
63 | 57 | - Subset Questions
|
64 |
| -- Space and Time Complexity Analysis |
65 |
| - - Introduction |
| 58 | +- ### Space and Time Complexity Analysis |
66 | 59 | - Comparisons of various cases
|
67 | 60 | - Solving Linear Recurrence Relations
|
68 | 61 | - Solving Divide and Conquer Recurrence Relations
|
|
72 | 65 | - Complexity discussion of all the problems we do
|
73 | 66 | - Space Complexity
|
74 | 67 | - NP-Completeness Introduction
|
75 |
| -- Object Oriented Programming |
76 |
| - - Introduction |
| 68 | +- ### Object Oriented Programming |
77 | 69 | - Classes & its instances
|
78 | 70 | - this keyword in Java
|
79 | 71 | - Properties
|
|
98 | 90 | - Vector Class
|
99 | 91 | - Lambda Expression
|
100 | 92 | - Enums
|
101 |
| -- Linked List |
102 |
| - - Introduction |
| 93 | +- ### Linked List |
103 | 94 | - Singly + Doubly + Circular LinkedList
|
104 | 95 | - Fast and slow pointer
|
105 | 96 | - Cycle Detection
|
106 | 97 | - Reversal of LinkedList
|
107 | 98 | - Linked List + Recursion
|
108 |
| -- Stacks & Queues |
109 |
| - - Introduction |
| 99 | +- ### Stacks & Queues |
110 | 100 | - Push efficient
|
111 | 101 | - Pop efficient
|
112 | 102 | - Circular Queue
|
113 | 103 | - Queue using Stack and Vice versa
|
114 | 104 | - Interview problems
|
115 |
| -- Trees |
116 |
| - - Introduction |
| 105 | +- ### Trees |
117 | 106 | - Binary Trees
|
118 | 107 | - Binary Search Trees
|
119 | 108 | - DFS
|
120 | 109 | - BFS
|
121 | 110 | - AVL Trees
|
122 | 111 | - Segment Tree
|
123 |
| -- Heaps |
124 |
| - - Introduction |
| 112 | +- ### Heaps |
125 | 113 | - Theory
|
126 | 114 | - Priority Queue
|
127 | 115 | - Heapsort
|
128 | 116 | - Two Heaps Method
|
129 | 117 | - k-way merge
|
130 | 118 | - Top k elements
|
131 | 119 | - Interval problems
|
132 |
| -- HashMap |
133 |
| - - Introduction |
| 120 | +- ### HashMap |
134 | 121 | - Theory - how it works
|
135 | 122 | - Comparisons of various forms
|
136 | 123 | - Limitations and how to solve
|
|
141 | 128 | - Chaining
|
142 | 129 | - Probing
|
143 | 130 | - Huffman-Encoder
|
144 |
| -- Subarray Questions: Sliding window, Two Pointer, Kadane's Algorithm |
145 |
| -- Graphs |
146 |
| - - Introduction |
| 131 | +- ### Subarray Questions: Sliding window, Two Pointer, Kadane's Algorithm |
| 132 | +- ### Graphs |
147 | 133 | - BFS
|
148 | 134 | - DFS
|
149 | 135 | - Working with graph components
|
|
154 | 140 | - Topological Sort
|
155 | 141 | - Bellman ford
|
156 | 142 | - A* pathfinding Algorithm
|
157 |
| -- Dynamic Programming |
158 |
| - - Introduction |
| 143 | +- ### Dynamic Programming |
159 | 144 | - Recursion + Recursion DP + Iteration + Iteration Space Optimized
|
160 | 145 | - Complexity Analysis
|
161 | 146 | - 0/1 Knapsack
|
162 | 147 | - Subset Questions
|
163 | 148 | - Unbounded Knapsack
|
164 | 149 | - Subsequence questions
|
165 | 150 | - String DP
|
166 |
| -- Greedy Algorithms |
167 |
| -- Tries |
| 151 | +- ### Greedy Algorithms |
| 152 | +- ### Tries |
168 | 153 |
|
169 |
| -### Advanced concepts apart from interviews |
| 154 | +## Advanced concepts apart from interviews |
170 | 155 | - Fast IO
|
171 | 156 | - File handling
|
172 | 157 | - Bitwise + DP
|
|
0 commit comments