Data Structures and Algorithms (DSA): Coding Interview Preparation in Python and Java
Crack coding rounds live: Big O, arrays, strings, hashing, linked lists, stacks, queues, trees, graphs, heaps, recursion, dynamic programming, greedy, 150 problems by pattern and mock interviews, in Python or Java.
Live batches with a trainer · Level: Intermediate · Duration: 40 hours · Language: English · Fee: ₹14,999
About this course
Data structures and algorithms are what product companies and the IT services majors test in coding rounds, and the one subject most graduates have not practised enough. This course teaches every structure and algorithm from scratch, then the problem patterns behind 150 interview questions, with mock interviews, in Python or Java (you choose; solutions are shown in both).
The course starts with complexity analysis (Big O, Omega and Theta), arrays, strings, hashing, two pointers and sliding window, then linked lists, stacks and queues, recursion and backtracking, binary trees and binary search trees, heaps and priority queues, graphs (BFS, DFS, shortest paths, topological sort, union-find) and tries. You then learn the algorithm paradigms: sorting and searching, divide and conquer, greedy, dynamic programming (1D, 2D, knapsack, LCS, LIS) and bit manipulation.
You then practise by pattern: 150 curated problems (LeetCode-style) by topic and difficulty, timed sessions, how to communicate a solution, system design basics, and mock interviews with feedback. Every topic is coded live, and every session is recorded.
What you will learn
- Analyse time and space complexity with Big O, Omega and Theta
- Solve array, string and hashing problems with two pointers, sliding window and prefix sums
- Implement and use linked lists, stacks, queues and deques
- Apply recursion and backtracking to subsets, permutations and constraint problems
- Work with binary trees, binary search trees, heaps and tries
- Solve graph problems with BFS, DFS, Dijkstra, topological sort and union-find
- Apply sorting, searching, divide and conquer, greedy and dynamic programming
- Solve 150 interview problems by pattern and explain solutions clearly
- Pass coding rounds and system design basics with mock interviews
Requirements
- Basic programming in Python or Java (variables, loops, functions, lists); the Python course covers this
- Best suited to engineering and computer science students, freshers preparing for placements and developers preparing for product company interviews
- A laptop with a stable internet connection
Syllabus
- Module 1: Complexity, arrays and strings (6 hours)
- Module 2: Linked lists, stacks and queues (5 hours)
- Module 3: Recursion and backtracking (4 hours)
- Module 4: Trees and heaps (7 hours)
- Module 5: Graphs (6 hours)
- Module 6: Algorithm paradigms (8 hours)
- Module 7: Interview practice (4 hours)
Upcoming live batches · Questions and answers · Book a free demo