Video: .mp4 (1280x720, 30 fps(r)) | Audio: aac, 44100 Hz, 2ch | Size: 2.16 GB
Genre: eLearning Video | Duration: 68 lectures (8 hour, 36 mins) | Language: English
Fenwick trees, Caches, Splay Trees, Prefix Trees (Tries), Substring-Search Algorithms and Travelling Salesman Problem
What you'll learn Homepage: https://www.udemy.com/course/advanced-algorithms-python/
Have a good grasp of algorithmic thinking
Be able to develop your own algorithms
Be able to detect and correct inefficient code snippets
Understand Fenwick trees
Understand caches (LRU caches and Splay Trees)
Understand tries and ternary search trees
Understand substring search algorithms (Rabin-Karp method, KMP algorithm and Z algorithm)
Understand the Hamiltonian cycle problem (and travelling salesman problem)
Understand Eulerian cycle problem
Requirements
Python basics
Some theoretical background (big O notation )
Description
This course is for those who are interested in computer science and want to implement the algorithms and given data structures in Python. In every chapter you will learn about the theory of a given data structure or algorithm and then you will implement them from scratch.
Chapter 1: Binary Indexed Trees (Fenwick Trees)
theory behind the binary indexed tree or Fenwick tree data structure
how to use this data structure in computer vision and artificial intelligence
implementation in Python
Chapter 2: LRU Caches
what are caches and why are they so important
how to use doubly linked lists to implement caches
theory behind LRU caches
implementation in Python
Chapter 3: Splay Trees
what are splay trees
how to achieve caches with splay trees
Chapter 4: B-Trees
external memory and internal memory (RAM)
data structures for the external memory
trees with multiple children and multiple keys
what are B-tree data structures?
Chapter 5: Prefix Trees (Tries)
what are tries or prefix trees
real world applications of tries
autocomplete feature of tries
sorting with tries
IP routing
Chapter 6: Ternary Search Trees
what are ternary search trees
boggle game with tries
Chapter 7: Substring Search Algorithms
what are substring search algorithms and why are they important in real world softwares
brute-force substring search algorithm
hashing and Rabin-Karp method
Knuth-Morris-Pratt substring search algorithm
Z substring search algorithm (Z algorithm)
implementations in Python
Chapter 8: Hamiltonian cycles (Travelling Salesman Problem)
Hamiltonian cycles in graphs
what is the travelling salesman problem?
how to use backtracking to solve the problem
meta-heuristic approaches to boost algorithms
Chapter 9: Eulerian Cycles (Chinese Postman Problem)
Eulerian cycles in graphs
what is the chinese postman problem?
Thanks for joining my course, let's get started!
Who this course is for:
This course is suited for anyone who has some basic knowledge in Python and interested in algorithms and data structures
TO MAC USERS: If RAR password doesn't work, use this archive program:
RAR Expander 0.8.5 Beta 4 and extract password protected files without error.
TO WIN USERS: If RAR password doesn't work, use this archive program:
Latest Winrar and extract password protected files without error.