Development
Algorithms (Data Structures) Bootcamp in C++
This course is for those who are interested in computer science and want to implement the algorithms and given data structures in C++ from scratch. 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: Recursion
- theory behind recursion (recursive function calls)
- stack memory and heap memory
- recursion and stack memory of the OS
- recursive problems such as the Towers of Hanoi problem
Chapter 2: Backtracking
- what is backtracking
- how to solve problems with backtracking
- N-queens problem
- coloring problem
- knight’s tour
Chapter 3: Dynamic Programming
- overlapping subproblems and dynamic programming
- what is “memoization” and “tabulation”?
- Fibonacci numbers
- knapsack problem
Chapter 4: Data Structures
- data structures and abstract data types (ADTs)
- arrays
- linked lists
- stacks
- queues
- binary search trees
- priority queues (heaps)
- associative arrays (hash tables)
Chapter 5: Graphs
- directed and undirected graphs
- graph traversal: breadth-first search and depth-first search
- shortest path algorithms
- Dijkstra’s algorithm
- Bellman-Ford algorithm
Chapter 6: Substring Search Algorithms
- the most relevant substring search algorithms
- naive substring search
- Knuth-Morris-Pratt (KMP) substring search algorithm
- Rabin-Karp algorithm
- Z algorithm (linear pattern matching)
Chapter 7: Sorting
- stable sorting and adaptive sorting
- comparison based and non-comparison based sorting algorithms
- string sorting
- bubble sort
- selection sort and insertion sort
- quicksort
- merge sort
- counting sort and radix sort
These are the topics we are going to consider on a one by one basis. After every topic there is a Q&A section where you can test your knowledge on the given topics. Thanks for joining my course, let’s get started!
Complete Java Developer Bootcamp Udemy Free Download
admin
0
Tags :