The ‘Algorithms and Data Structures in Python (INTERVIEW Q&A) Course’ is taught by Holczer Balazs. He works as a simulation engineer at a multinational company. The course aims to focus on data structures, algorithms, and graphs. The course will implement such problems in Python programming language.

The course follows a hands-on approach. Students will be able to see the practical applications of all the concepts in the investment banking, AI, and stock market industries. The course is usually available for INR 2,799 on Udemy but students can click on the link and get the ‘Algorithms and Data Structures in Python (INTERVIEW Q&A) Course’ for INR 449.

Who all can opt for this course?

Novice Python programmers who are curious to study graphs, algorithms, and data structures.

Course Highlights

Key HighlightsDetails
Registration LinkApply Now!
PriceINR 449 (INR 2,79984% off
Duration23 hours
Student Enrollment27,267 students
InstructorHolczer Balazs
Topics CoveredArrays, linked lists, stacks and queues, binary search trees, priority queues and heaps, etc.
Course LevelIntermediate (Some basic Python knowledge is required)
Total Student Reviews4,086

Learning Outcomes

  • Understand linked lists and arrays
  • Learn about queues and stacks
  • Learn about tree-like data structures (binary search trees)
  • Learn about balances trees (AVL trees and red-black trees)
  • Get familiar with heap data structures
  • Know about dictionaries, hash tables, and hashing
  • Recognize the differences between abstract data types and data structures
  • Learn about graph traversal (BFS and DFS)
  • Recognize shortest-path algorithms like Bellman-Ford and Dijkstra’s methods
  • Learn the Prims algorithm for minimum spanning trees
  • Recognize sorting formulas
  • Learn how to create original algorithms
  • Have a good knowledge of algorithmic thinking
  • Be able to detect and fix inefficient code fragments

Course Content

S.No.Module (Duration)Topics
1.Introduction (02 minutes)Introduction
Complexity theory basics
2.Installation and Environment Setup (05 minutes)Installing Python
Installing PyCharm
3.### DATA STRUCTURES ### (11 minutes)Why do we need data structures?
Data structures and abstract data types
Data Structures and Abstract Data Types Quiz
4.Data Structures – Arrays (38 minutes)What are array data structures?
What are lists in Python?
Arrays introduction – operations
Lists in Python
Lists in Python – advanced operations
Lists in Python – list comprehension
Arrays and Lists Quiz
5.Interview Questions – (Arrays) (01 hour 01 minutes)Reversing an array in-place overview
Reversing an array in-place solution
Palindrome problem overview
Palindrome problem solution
Integer reversion problem overview
Integer reversion problem solution
Anagram problem overview
Anagram problem solution
Dutch national flag problem overview
Dutch national flag problem theory
Dutch national flag problem solution
Trapping rain water problem overview
Trapping rain water problem theory
Trapping rain water problem solution
6.Data Structures – Linked Lists (48 minutes)What are linked lists?
Linked list introduction – operations
Linked list implementation I
Linked list implementation II
Linked list implementation III
Revisiting remove operation
Comparing linked lists and arrays
Practical (real-world) applications of linked lists
Linked Lists Quiz
7.Data Structures – Doubly Linked Lists (19 minutes)What are doubly linked lists?
Doubly linked list implementation
Running time comparison: linked lists and arrays
Doubly Linked Lists Quiz
8.Interview Questions (Linked Lists) (12 minutes)Finding the middle node in a linked list overview
Finding the middle node in a linked list solution
Reverse a linked list in-place overview
Reverse a linked list in-place solution
9.Data Structures – Stacks (27 minutes)What are stacks?
Stacks in memory management (stacks and heaps)
Stack memory visualization
Stack implementation
Practical (real-world) applications of stacks
Stack Quiz
10.Data Structures – Queues (12 minutes)What are queues?
Queue implementation
Queues Quiz
11.Interview Questions (Stacks and Queues) (17 minutes)Max in a stack problem overview
Max in a stack problem solution
Queue with stack problem
Queue with stack problem solution
Queue with stack problem solution – recursion
12.Data Structures – Binary Search Trees (01 hour 27 minutes)What are binary search trees?
Binary search trees theory – search, insert
Binary search trees theory – delete
Binary search trees theory – in-order traversal
Binary search trees theory – running times
Binary search tree implementation I
Binary search tree implementation II
Stack memory visualization – finding max (min) items
Stack memory visualization – tree traversal
Binary search tree implementation III – remove operation
Practical (real-world) applications of trees
Binary Search Trees Quiz
13.Interview Questions (Binary Search Trees) (08 minutes)Compare binary trees overview
Compare binary trees solution
14.Data Structures – AVL Trees (01 hour 22 minutes)Motivation behind balanced binary search trees
What are AVL trees?
AVL trees introduction – height
AVL trees introduction – rotations
AVL trees introduction – illustration
AVL tree implementation I
AVL tree implementation II
AVL tree implementation III
AVL tree implementation IV
AVL tree implementation V
Practical (real-world) applications of balanced binary search trees
AVL Trees Quiz
15.Data Structures – Red-Black Trees (59 minutes)What are red-black trees?
The logic behind red-black trees
Red-black trees – recoloring and rotation cases
Red-black tree illustrations
Red-black tree implementation I
Red-black tree implementation II
Red-black tree implementation III
Red-black tree implementation IV
Differences between red-black tree and AVL trees
Red-Black Trees Quiz
16.Data Structures – Heaps (01 hour 11 minutes)What are priority queues?
Heap introduction – basics
Heap introduction – array representation
Heap introduction – remove operation
Using heap data structure to sort (heapsort)
Heap introduction – operations complexities
Binomial and Fibonacci heaps
Heap implementation I
Heap implementation II
Heap implementation III
Heaps in Python
Heaps Quiz
17.Interview Questions (Heaps) (14 minutes)Interview question #1 – checking heap properties
Interview question #1 – solution
Interview question #2 – max heap to a min heap
Interview question #2 – solution
18.Data Structures – Associative Arrays (Dictionaries) (01 hour 06 minutes)What are associative arrays?
Hashtable introduction – basics
Hashtable introduction – collisions
Hashtable introduction – dynamic resizing
Linear probing implementation I
Linear probing implementation II
Linear probing implementation III
Dictionaires in Python
Why to use prime numbers in hashing?
Practical (real-world) applications of hashing
Dictionaries Quiz
19.### GRAPH ALGORITHMS ### (18 minutes)Graph theory overview
Adjacency matrix and adjacency list
Applications of graphs
Graph Algorithms Overview Quiz
20.Graph Algorithms – Graph Traversal Algorithms (57 minutes)Breadth-first search introduction
Breadth-first search implementation
What are WebCrawlers (core of search engines)?
WebCrawler basic implementation
Depth-first search introduction
Depth-first search implementation
Depth-first search implementation II
Memory management: BFS vs DFS
Graph traversal quiz
21.Interview Questions (Graph Traversal) (25 minutes)Interview question #1 – implement DFS with recursion
Interview question #1 – solution
Depth-first search and stack memory visualisation
Interview question #2 – using BFS to find way out of maze
Interview question #2 – solution
22.Graph Algorithms – Shortest Paths with Dijkstra’s Algorithm (01 hour 18 minutes)What is the shortest path problem?
Dijkstra algorithm visualization
Dijkstra algorithm implementation I – Edge, Node
Dijkstra algorithm implementation II – algorithm
Dijkstra algorithm implementation III – testing
Dijktsra’s algorithm with adjacency matrix representation
Adjacency matrix representation implementation
Shortest path algorithms applications
What is the critical path method (CPM)?
Dijkstra’s Algorithm Quiz
23.Graph Algorithms – Shortest Paths with Bellman-Ford Algorithm (37 minutes)What is the Bellman-Ford algorithm?
Bellman-Ford algorithm visualization
Bellman-Ford algorithm implementation I – Node, Edge
Bellman-Ford algorithm implementation II – the algorithm
Bellman-Ford algorithm implementation III – testing
Greedy algorithm or dynamic programming approach?
Bellman-Ford Algorithm Quiz
24.Interview Questions (Shortest Paths) (10 minutes)Interview question #1 – detecting negative cycles on the FOREX
How to use Bellman-Ford algorithm on the FOREX?
Interview question #1 – solution
25.Graph Algorithms – Spanning Trees with Kruskal Algorithm (58 minutes)What is the disjoint set data structure?
Disjoint sets visualization
Kruskal’s algorithm introduction
Kruskal algorithm implementation I – basic classes
Kruskal algorithm implementation II – disjoint set
Kruskal algorithm implementation III – algorithm
Kruskal algorithm implementation VI – testing
Kruskal’s Algorithm Quiz
26.Graph Algorithms – Spanning Trees with Prims Algorithm (31 minutes)What is the Prim-Jarnik algorithm?
Prims-Jarnik algorithm implementation I
Prims-Jarnik algorithm implementation II
Comparing the spanning tree approaches
Applications of spanning trees
Prim’s Algorithm Quiz
27.Hamiltonian Cycles – Travelling Salesman Problem (49 minutes)What are Hamiltonian cycles?
The travelling salesman problem
Travelling salesman problem implementation
TSP and stack memory visualization
Why to use meta-heuristics?
Hamiltonian Problem Quiz
28.### SUBSTRING SEARCH ALGORITHMS ### (02 hours 15 minutes)Brute-force search introduction
Brute-force substring search algorithm implementation
Naive Substring Search Quiz
Rabin-Karp algorithm introduction
Rabin-Karp algorithm implementation
Rabin-Karp Substring Search Quiz
Knuth-Morris-Pratt algorithm introduction
Constructing the partial match table – visualization
Knuth-Morris-Pratt algorithm implementation
Knuth-Morris-Pratt Algorithm Quiz
Z algorithm introduction
Z algorithm illustration
Z algorithm implementation
Z Algorithm Quiz
Substring search algorithms comparison
Applications of substring search
29.### SORTING ALGORITHMS ### (03 hours 16 minutes)Sorting introduction
What is stability in sorting?
What is adaptive sorting?
Sorting Algorithms Basics Quiz
Bogo sort introduction
Bogo sort implementation
Bogo Sort Quiz
Bubble sort introduction
Bubble sort implementation
Selection sort introduction
Selection sort implementation
Selection Sort Quiz
Insertion sort introduction
Insertion sort implementation
Sorting custom objects with insertion sort
Solution – sorting custom objects with insertion sort
Insertion Sort Quiz
Shell sort introduction
Shell sort implementation
Shell Sort Quiz
Quicksort introduction
Quicksort introduction – example
Quicksort implementation
Hoare’s partitioning and Lomuto’s partitioning
What is the worst-case scenario for quicksort?
QuickSort Quiz
Merge sort introduction
Merge sort implementation
Stack memory and merge sort visualization
Merge Sort Quiz
Hybrid algorithms introduction
Non-comparison based algorithms
Counting sort introduction
Counting sort implementation
Radix sort introduction
Radix sort implementation
Measure running time differences
Non-Comparison Based Sorting Quiz
30.Interview Questions (Sorting) (01 minutes)TimSort algorithm
Interview question #1 – solution
Quicksort with iteration
Interview question #2 – solution
Selection sort with recursion
Interview question #3 – solution
31.### APPENDIX – COMPLEXITY THEORY CRASH COURSE ### (59 minutes)How to measure the running times of algorithms?
Complexity theory illustration
Complexity notations – big (O) ordo
Complexity notations – big ? (omega)
Complexity notations – big (?) theta
Algorithm running times
Complexity classes
Analysis of algorithms – loops
32.Next Steps (33 seconds)Next steps
33.Course Materials (DOWNLOADS) (00 seconds)Download course materials (slides and source code)

Resources Required

  • Basics of Python
  • Some theoretical background (big O notation)

Featured Review

Dakota Hipp (5/5): Great information and well explained, I learned a lot in this course!


  • Shervin Goudarzi (5/5): Yes, it is a great experience; I have learned a lot!!!
  • Anonymized User (5/5): It’s the best Algo and DSA course with python on Udemy.
  • Tanner Barcelos (4/5): sets you up perfectly for LeetCode and Hackerank and of course, interviews.
  • Arjun VS (5/5): Update: thank you for updating the coding section, now it’s perfect.


  • Brady Dyson (2/5): This concept isn’t very difficult to understand, but I also already knew what a stack was.
  • Aarushi Singh (1/5): It’s difficult to understand as he is not doing anything on IDE, with no hands-on programming.
  • Yash Varshney (2/5): He used vert small fonts while doing programming which is very difficult to see. Please zoom in notepad++ .
  • Ayberk Koc (1/5): Also the course seems to be build up in a very lazy manner.

About the Author

The course is taught by Holczer Balazs. He works as a software engineer at a multinational company. He offers a total of 32 courses on Udemy and has an average of 4.5 instructor rating based on over 33k reviews. He has taught 2,64,824 students so far.

  • He is from Budapest, Hungary.
  • He is qualified as a Physicist.
  • He currently works for a multinational company as a simulation engineer.
  • He developed an interest in algorithms and data structures, especially their implementations in Java since University.
  • Subsequently, he learned how to solve differential equations using linear algebra, interpolation, and extrapolation, as well as other artificial intelligence and machine learning approaches.

Comparison Table

ParametersAlgorithms and Data Structures in Python (INTERVIEW Q&A)Recursion, Backtracking and Dynamic Programming in PythonPython 3: Deep Dive (Part 2 – Iteration, Generators)
OffersINR 449 (INR 2,799) 84% offINR 455 (INR 3,499) 87% offINR 455 (INR 3,499) 87% off
Duration23 hours16 hours36 hours
Rating4.4/54.6 /54.9 /5
Student Enrollments27,2679,83228,599
InstructorsHolczer BalazsHolczer BalazsFred Baptiste
Register HereApply Now!Apply Now!Apply Now!

Leave feedback about this

  • Rating