Files Included :
001 Introduction (16.85 MB)
001 Installing Python (7.15 MB)
002 Installing PyCharm (9.62 MB)
001 What are stack and heap memory (46.29 MB)
002 Stack memory and heap memory simulation (12.38 MB)
004 What is recursion (recursive function call) (35.2 MB)
005 Head and tail recursion implementation (40.17 MB)
006 Recursion and stack memory (stack overflow) (16.43 MB)
009 Factorial problem - with head recursion (12.02 MB)
010 Factorial problem - visualizing the stack (6.34 MB)
011 Transforming a head recursion into a tail recursion (22.21 MB)
012 Fibonacci numbers problem - with head recursion (26.7 MB)
013 Fibonacci numbers - visualizing the stack memory (15.64 MB)
018 Towers of Hanoi introduction (9.31 MB)
019 Towers of Hanoi implementation (16.27 MB)
020 Towers of Hanoi - visualizing the stack (14.57 MB)
023 What is the Euclidean algorithm (10.53 MB)
024 Euclidean algorithm implementation (6.57 MB)
025 Recursion and iteration revisited (4.75 MB)
001 What is linear search (3.33 MB)
003 Linear search implementation (6.31 MB)
006 What is binary (logarithmic) search (6.09 MB)
007 Binary search implementation (22.39 MB)
001 Selection algorithms introduction (11.93 MB)
002 Quickselect introduction - Hoare's algorithm (17.69 MB)
003 Quickselect visualization (15.83 MB)
005 Quickselect implementation (33.33 MB)
008 What is the problem with pivots (12.92 MB)
010 Advanced selection - median of medians, introselect (28.41 MB)
011 Median of medians algorithm implementation (61.5 MB)
012 Introselect algorithm - power of combining algorithms (3.09 MB)
013 Online selection - the secretary problem (18.09 MB)
001 Binary representation of numbers (4.96 MB)
002 Logical operators (9.19 MB)
003 Binary shift operators (4.93 MB)
004 Finding the bit length of an integer (7.26 MB)
005 Checking even and odd numbers (7.96 MB)
006 Russian peasant problem (11.79 MB)
001 What is backtracking (12.15 MB)
002 Brute-force search and backtracking (5.96 MB)
004 N-queens problem introduction (16.89 MB)
005 What is the search tree (4.68 MB)
006 N-queens problem implementation I (53.77 MB)
007 N-queens problem implementation II (33.1 MB)
008 N-queens problem and stack memory visualization (13.19 MB)
010 Hamiltonian paths (and cycles) introduction (14.68 MB)
011 Hamiltonian cycle illustration (7.38 MB)
012 Hamiltonian path implementation I (10.59 MB)
013 Hamiltonian path implementation II (17.78 MB)
016 Coloring problem introduction (18.6 MB)
017 Coloring problem visualization (13 MB)
019 Coloring problem implementation (35.02 MB)
020 Knight's tour introduction (6.84 MB)
021 Knight's tour implementation I (54.45 MB)
022 Knight's tour implementation II (18.39 MB)
023 Maze problem introduction (7.14 MB)
024 Maze problem implementation (52.02 MB)
025 Maze problem and stack memory visualization (11.82 MB)
026 Sudoku introduction (12.38 MB)
027 Sudoku implementation I (11.17 MB)
028 Sudoku implementation II (11.2 MB)
029 Sudoku implementation III (31.29 MB)
030 What is the problem with backtracking (10.05 MB)
001 Dynamic programming introduction (30.06 MB)
003 Fibonacci numbers introduction (7.71 MB)
004 Fibonacci numbers implementation (21.85 MB)
005 Knapsack problem introduction (54.41 MB)
006 Knapsack problem example (22.54 MB)
007 Knapsack problem with recursion (recursion tree) (50.8 MB)
010 Knapsack problem implementation (27.32 MB)
011 Rod cutting problem introduction (14.59 MB)
012 Rod cutting problem example (20.24 MB)
013 Rod cutting problem implementation (35.15 MB)
014 Subset sum problem introduction (27.48 MB)
015 Subset sum problem example (12.89 MB)
016 Subset sum implementation (45.94 MB)
017 Maximum subarray problem (Kadane's algorithm) (16.98 MB)
018 Longest common subsequence introduction (30.23 MB)
019 Longest common subsequence implementation (25.3 MB)
020 Longest common subsequence with recursion (recursion tree) (23.01 MB)
001 Bin packing problem introduction (13.78 MB)
002 Bin packing problem implementation (38.21 MB)
001 What are divide-and-conquer approaches (19.71 MB)
003 Binary search revisited (11.51 MB)
004 Merge sort theory (14.13 MB)
005 Merge sort implementation (18.79 MB)
006 Merge sort and stack memory visualization (13.11 MB)
009 Closes pair of points problem introduction I (50.54 MB)
010 Closes pair of points problem introduction II (16.64 MB)
011 Closes pair of points problem implementation (117.42 MB)
001 Brute-force search introduction (10.76 MB)
003 Brute-force search implementation (11.33 MB)
005 Rabin-Karp algorithm introduction (41.62 MB)
006 Rabin-Karp algorithm implementation (35.32 MB)
008 Knuth-Morris-Pratt algorithm introduction (20.9 MB)
009 Constructing the partial match table (16.96 MB)
010 Knuth-Morris-Pratt algorithm implementation (34.37 MB)
012 Z algorithm introduction (34.99 MB)
013 Z algorithm illustration (20.87 MB)
014 Z algorithm implementation (37.48 MB)
016 Substring search algorithms comparison (11.48 MB)
017 Applications of substring search (5.74 MB)
002 Reversing an array in-place solution (7.67 MB)
004 Palindrome problem solution (15.37 MB)
006 Anagram problem solution (12.56 MB)
008 Integer reversion problem solution (16.74 MB)
010 Finding the middle node in a linked list solution (15.9 MB)
012 Trapping rain water problem theory (23.34 MB)
013 Trapping rain water problem solution (27.78 MB)
001 How to measure the running times of algorithms (28.37 MB)
002 Complexity theory illustration (9.04 MB)
003 Complexity notations - big (O) ordo (13.2 MB)
004 Complexity notations - big Ω (omega) (7.99 MB)
005 Complexity notations - big (θ) theta (3.89 MB)
006 Algorithm running times (20.3 MB)
007 Complexity classes (44.11 MB)
008 Analysis of algorithms - loops (15.64 MB)
001 Algorithms Visualization App (3.88 MB)
001 algorithmic-problems-python (16.35 MB)
[center]
Screenshot