Java Syllabus
Java Syllabus
What is hashing?
Use HashMap Difference between HashMap and HashSet?
confidently Why is HashMap lookup fast?
Use HashSet What is a key-value pair?
confidently Difference between array search and HashMap lookup?
Solve What happens if duplicate keys are inserted?
frequency- When should HashSet be preferred?
HashMap, based problems Dry run:
HashSet, key- 1. Frequency Detect Frequency count
value mapping, counting 2. duplicates Duplicate detection
hashing Duplicate efficiently Pair sum lookup
intuition, detection 3. 1. Build 1. Explain Optimize
frequency First non- Attendance hashing lookup Example:
counting, repeating Analyzer using intuition 2. operations
duplicate element 4. Pair HashMap 2. Explain why Compare brute arr = {2, 4, 2, 7, 4, 9, 2}
detection, sum lookup 5. Count student HashMap force vs hashing
lookup Count attendance lookup is fast 3. approaches Show:
optimization, occurrences 6. frequency 3. Compare array Build real-world
containsKey(), Common Detect search vs lookup-driven Frequency map creation
Hashing put(), get(), elements duplicate HashMap console Duplicate identification
Day 4 Fundamentals remove() between arrays entries lookup applications Lookup process
Solve problems
under time
constraints
Handle coding At end of day, student must answer:
pressure better
Explain How do you approach a coding problem under time pressure?
technical Difference between brute force and optimized solution?
solutions clearly How do you debug quickly during assessments?
Participate Explain one array problem solved today.
confidently in Explain one sorting algorithm confidently.
technical Explain one hashing problem confidently.
1. Arrays discussions Dry run:
assessment 2. 1. Technical Debug mistakes Bubble sort
Timed problem Sorting 1. 1 Hour self- systematically Frequency count using HashMap
solving, coding assessment 3. Coding Test 2. introduction 2. Improve coding Binary search
discipline, Hashing Fix one buggy Explain one speed and
debugging assessment 4. program 3. Peer solved problem clarity Student must also:
mindset, Mixed logic code review 4. 3. Speak Build
interview problems 5. Resume solution confidence for Introduce themselves technically in English
communication Time-bound introduction approach placement Explain one project/mini-task completed so far
Day 5 Assessment basics coding drills practice clearly assessments Defend implementation choices
Traverse and
manipulate
strings
confidently At end of day, student must answer:
Solve basic
string-based What is a String?
DSA problems Why are Strings immutable in Java?
Use Difference between String and StringBuilder?
StringBuilder What is ASCII?
efficiently How are characters internally stored?
Understand Why is StringBuilder preferred for modifications?
immutability Dry run:
practically Reverse string
Perform Palindrome check
1. Reverse character- Frequency count
string 2. 1. Build based
String, Palindrome Password processing Example:
StringBuilder, string 3. Validator 2. 1. Explain Build
ASCII values, Character Validate immutable validation- String s = "madam";
character frequency 4. uppercase, strings 2. based console
arrays, Count lowercase, Explain why applications Explain:
immutability, vowels/conson digit, special StringBuilder is Explain string
string traversal, ants 5. Remove character rules faster 3. Explain optimization Traversal
Strings common string spaces 6. 3. Username ASCII decisions Character comparison
Day 6 Fundamentals methods Toggle case formatter conversion logic clearly Reverse generation
Solve optimized
string problems At end of day, student must answer:
Apply sliding
window What is an anagram?
technique What is substring vs subsequence?
correctly What is sliding window technique?
Use two- Why is sliding window faster than brute force?
1. Valid pointer logic What is two-pointer logic?
anagram 2. confidently When should HashMap be used in string problems?
Longest Detect Dry run:
substring repeating/non- Longest substring without repetition
without repeating Valid anagram
Anagram repeating patterns Character frequency
checking, characters 3. 1. Build Log Optimize brute
substrings, Character Analyzer 2. 1. Explain two- force solutions Example:
sliding window frequency 4. Count repeated pointer logic 2. Build
technique, two- First non- words/errors 3. Explain sliding frequency- String s = "abcabcbb";
pointer repeating Find most window driven text
approach, character 5. frequent log intuition 3. utilities Explain:
frequency maps Substring entries 4. Compare brute Explain
Advanced in strings, generation 6. Detect force vs optimization Window movement
Strings + Sliding optimized Window-based duplicate optimized reasoning Duplicate detection
Day 7 Window string traversal problems patterns approach clearly Left/right pointer updates
At end of day, student must answer:
Understand
recursive What is recursion?
execution flow What is a base condition?
Write basic What happens if base condition is missing?
recursive Difference between recursion and loops?
programs What is recursion stack?
Visualize Why does recursion consume memory?
recursion using Dry run:
trees and stack Factorial recursion
frames Fibonacci recursion
Identify base Sum of digits recursion
conditions
correctly Example:
1. Factorial 1. Build Compare
using recursion Recursive 1. Draw recursion vs factorial(4)
Stack frames, 2. Fibonacci Utility Program recursion trees iteration
base condition, series 3. Power 2. Menu-driven 2. Explain Solve recursive Explain:
recursive calls, of a number 4. recursion recursive mathematical
recursive flow, Sum of digits 5. operations 3. execution flow problems Every function call
function call Reverse Recursive 3. Explain Explain Stack push/pop
Recursion stack, recursion number 6. calculator recursion stack recursion stack Return values
Day 8 Basics vs iteration Count digits utilities behavior behavior clearly Final output generation
Understand At end of day, student must answer:
backtracking
intuition What is backtracking?
Generate Difference between recursion and backtracking?
subsets and What is state rollback?
permutations Why is backtracking called “trial and error with intelligence”?
Visualize What is decision tree exploration?
recursive Why do we undo choices in backtracking?
decision trees Dry run:
Implement Subset generation
rollback Permutation generation
correctly Maze traversal
Backtracking Solve
intuition, 1. Generate exploration- Example:
decision trees, subsets 2. 1. Build based recursive
recursive Generate Recursive 1. Explain problems nums = [1,2]
branching, state permutations 3. Puzzle Solver 2. decision tree Build recursive
rollback, Maze path Maze flow 2. Explain puzzle-solving Explain:
choose-explore- exploration 4. navigation choose-explore- logic
unchoose Combination simulation 3. unchoose Develop deeper Recursive branching
pattern, generation 5. Subset process 3. recursive Include/exclude decisions
Backtracking recursion tree Recursive path generator Explain state problem- State rollback
Day 9 Foundations expansion tracing console app rollback clearly solving maturity Final subset generation
OOP principles,
classes & Refactor
objects, Student Marks
encapsulation, 1. Design a Analyzer into
inheritance, Student class OOP:
abstraction with fields, - Student class
awareness, constructor, with name,
constructors, getters/setters rollNo, marks
collections 2. Create an -
basics, array of StudentManage
Classes and Student objects r class with
objects, and sort by ArrayList<Stude
constructors marks nt>
(default, 3. ArrayList - Methods:
parameterised), add/remove/se addStudent,
encapsulation arch findTopStudent Explain
(private fields + 4. Override , sortByMarks encapsulation:
getters/setters) toString() for - Proper 'why private
, 'this' keyword, Student package fields protect
static vs 5. Static structure data integrity'
instance counter for (model / service Explain static vs
members, total objects / main) instance: 'one
ArrayList vs created per class vs one Design Java
Array, basic 6. Design Refactor the per object' programs using
Collections Animal → Dog / entire project Explain why OOP principles
usage, Cat hierarchy codebase into ArrayList is Create reusable
Inheritance with method full OOP: preferred over class-based At end of day, student must answer:
(extends), overriding - Abstract base arrays for architectures
method 7. Interface classes where dynamic data Use collections What is a class?
overriding, Printable appropriate Explain effectively What is an object?
super keyword, implemented - Interfaces for polymorphism: Structure Java What is encapsulation?
abstract by multiple services 'one interface, projects Difference between inheritance and abstraction?
classes, classes - Use Java many professionally Why is OOP preferred in large applications?
interfaces, 8. Collections: Collections implementation Design multi- Difference between abstract class and interface?
polymorphism, sort ArrayList of Framework (no s' with live code level OOP What is polymorphism?
Collections: objects using custom linked demo hierarchies Difference between Comparator and Comparable?
ArrayList, Comparator list — use java. Explain abstract Use Java Difference between ArrayList and LinkedList in Java Collections?
LinkedList, 9. util) class vs Collections What is a PriorityQueue and when would you use it?
HashMap, PriorityQueue - Proper interface: when Framework
HashSet, Stack, usage (min- inheritance to use each fluently Student must also:
Queue usage in heap) hierarchy Explain Apply Show working GitHub repository
Java Collections 10. LinkedList Commit to Comparator vs polymorphism Explain package organization
Day 10 OOP Framework as Queue GitHub Comparable correctly Demonstrate object interaction flow
OOP principles,
classes & Refactor
objects, Student Marks
encapsulation, 1. Design a Analyzer into
inheritance, Student class OOP:
abstraction with fields, - Student class
awareness, constructor, with name,
constructors, getters/setters rollNo, marks
collections 2. Create an -
basics, array of StudentManage
Classes and Student objects r class with
objects, and sort by ArrayList<Stude
constructors marks nt>
(default, 3. ArrayList - Methods:
parameterised), add/remove/se addStudent,
encapsulation arch findTopStudent Explain
(private fields + 4. Override , sortByMarks encapsulation:
getters/setters) toString() for - Proper 'why private
, 'this' keyword, Student package fields protect
static vs 5. Static structure data integrity'
instance counter for (model / service Explain static vs
members, total objects / main) instance: 'one
ArrayList vs created per class vs one Design Java
Array, basic 6. Design Refactor the per object' programs using
Collections Animal → Dog / entire project Explain why OOP principles
usage, Cat hierarchy codebase into ArrayList is Create reusable
Inheritance with method full OOP: preferred over class-based At end of day, student must answer:
(extends), overriding - Abstract base arrays for architectures
method 7. Interface classes where dynamic data Use collections What is a class?
overriding, Printable appropriate Explain effectively What is an object?
super keyword, implemented - Interfaces for polymorphism: Structure Java What is encapsulation?
abstract by multiple services 'one interface, projects Difference between inheritance and abstraction?
classes, classes - Use Java many professionally Why is OOP preferred in large applications?
interfaces, 8. Collections: Collections implementation Design multi- Difference between abstract class and interface?
polymorphism, sort ArrayList of Framework (no s' with live code level OOP What is polymorphism?
Collections: objects using custom linked demo hierarchies Difference between Comparator and Comparable?
ArrayList, Comparator list — use java. Explain abstract Use Java Difference between ArrayList and LinkedList in Java Collections?
LinkedList, 9. util) class vs Collections What is a PriorityQueue and when would you use it?
HashMap, PriorityQueue - Proper interface: when Framework
HashSet, Stack, usage (min- inheritance to use each fluently Student must also:
Queue usage in heap) hierarchy Explain Apply Show working GitHub repository
Java Collections 10. LinkedList Commit to Comparator vs polymorphism Explain package organization
Day 11 OOP Framework as Queue GitHub Comparable correctly Demonstrate object interaction flow
At end of day, student must answer:
Implement SLL,
DLL, and What is a node?
Circular LL Difference between array and linked list?
Perform Why are linked lists dynamic?
insertion and Difference between SLL, DLL, and Circular LL?
deletion How does insertion happen?
operations How does deletion happen?
Reverse linked Why is reversing a linked list important?
lists confidently Dry run:
Understand Insert node
SLL, DLL, dynamic Delete node
Circular Linked memory Reverse linked list
List, nodes, behavior Find middle node
dynamic 1. Explain Trace
memory 1. Insert at pointer/referen pointer/referen Example:
allocation, beginning/end ce movement 2. ce movement
insertion, 2. Delete node 1. Build Contact Explain node visually 10 -> 20 -> 30 -> 40
deletion, 3. Reverse Manager using connections Build linked-list-
traversal, linked list 4. Linked List 2. visually 3. based console Explain:
reverse, middle Find middle Add/Delete/Sea Explain why applications
node, node 5. Search rch contacts 3. linked lists use Explain linked Pointer/reference movement
pointer/referen element 6. Reverse contact dynamic list operations Node connection updates
Day 12 Linked Lists ce movement Count nodes list memory clearly Reverse process step-by-step
Solve DSA
problems under
time pressure
Explain
solutions
confidently in At end of day, student must answer:
public
Debug recursive How do you approach a DSA problem during interviews?
and linked-list Difference between recursion and iteration?
programs Difference between array and linked list?
Handle Why are Strings immutable?
1. 1 Hour technical viva Explain one optimization done today.
Coding questions Explain one bug identified and fixed.
Timed coding 1. Strings Assessment 2. Improve coding Dry run:
strategy, assessment 2. Debug one 1. Explain one clarity and Reverse string
debugging Recursion broken DSA topic communication Recursive factorial
discipline, assessment 3. recursive/LL publicly 2. Develop Reverse linked list
technical Linked List program 3. Peer Present interview
explanation assessment 4. review approach step- confidence Student must also:
techniques, Mixed DSA solutions 4. by-step 3. Present
interview coding Optimize one Answer viva optimized Explain one DSA concept publicly
communication problems 5. brute-force questions approaches Defend implementation choices
Day 13 Assessment basics Dry-run drills solution confidently logically Answer follow-up technical questions
At end of day, student must answer:
What is LIFO?
What is FIFO?
Difference between Stack and Queue?
Difference between array implementation and linked list
implementation?
What is stack overflow and underflow?
Implement What is monotonic stack?
Stack and Why are stacks used in recursion internally?
Queue using Dry run:
arrays and Valid parentheses
linked lists Stock span
Solve Queue operations
parenthesis and
stock-span Example:
problems
Recognize Input: ()[]{}
monotonic
stack patterns Explain:
Understand
sequential data Push operations
1. Valid processing Pop operations
parentheses 2. Build navigation Stack state after every step
Stack using Stock span 1. Build and queue-
array and linked problem 3. Next Browser 1. Explain based systems Example:
list, Queue greater Navigation LIFO/FIFO Explain
using array and element 4. Simulator 2. visually 2. LIFO/FIFO Prices = [100, 80, 60, 70, 60, 75, 85]
linked list, LIFO, Queue Back/Forward Explain clearly
FIFO, implementation navigation monotonic Apply Explain:
push/pop/peek, 5. Stack using Stack 3. stack intuition stack/queue
enqueue/deque implementation Ticket queue 3. Explain real- logic to Stack behavior
ue, monotonic 6. Circular simulation world queue interview Span calculation
Day 14 Stack + Queue stack intuition queue basics using Queue systems problems Monotonic property
At end of day, student must answer:
What is a tree?
Difference between Binary Tree and BST?
What is a leaf node?
What is tree height?
Why is recursion commonly used in trees?
What is the BST property?
Difference between:
Inorder
Preorder
Postorder
Dry run:
BST insertion
Understand Traversals
Binary Trees Height calculation
and BSTs
Perform Example:
recursive
traversals 50
Tree confidently / \
terminology, Insert and 30 70
Binary Tree, search nodes in /\ /\
Binary Search BST 20 40 60 80
Tree, traversals Calculate tree
(Inorder, height correctly Student must draw:
Preorder, 1. BST insertion 1. Explain Visualize
Postorder), 2. Inorder recursive hierarchical Inorder traversal
insertion, traversal 3. traversals data structures Preorder traversal
height, depth, Preorder 1. Build Student visually 2. Build tree- Postorder traversal
leaf nodes, traversal 4. Hierarchy Tree Explain BST based console
structural Postorder 2. Insert/search ordering applications And explain:
properties, traversal 5. Find student records property 3. Explain
recursive tree height 6. 3. Display Draw traversal traversal logic Recursive call flow
Trees + BT + traversal Search element hierarchy using outputs clearly and Left/right subtree processing
Day 15 BST intuition in BST traversals manually systematically Traversal order reasoning
At end of day, student must answer:
What is a graph?
Difference between graph and tree?
Difference between adjacency list and adjacency matrix?
What is BFS?
What is DFS?
Why is visited array necessary?
When should BFS be preferred over DFS?
Dry run:
Represent BFS traversal
graphs using DFS traversal
adjacency Flood fill
structures
Implement BFS Example:
and DFS
confidently 0→1→2
Solve ↓
Graph connectivity- 3→4
terminology, based problems
adjacency list, Understand Explain:
adjacency traversal
matrix, BFS, strategies BFS traversal order
DFS, visited 1. BFS traversal 1. Build Social Apply graph DFS traversal order
array, 2. DFS traversal Network Graph 1. Explain logic to matrix Queue behavior in BFS
connected 3. Number of Simulator 2. traversal problems Stack/recursion behavior in DFS
components, islands 4. Flood Friend choices 2. Build graph-
traversal fill 5. Number connection Compare BFS vs based console Student must also explain:
intuition, graph of provinces 6. traversal 3. DFS visually 3. applications
Graphs + vs tree Path existence Connected Explain visited- Compare BFS vs Why islands/flood-fill problems are graph problems
Day 16 BFS/DFS differences check users detection array logic DFS with clarity How connected components work
At end of day, student must answer: