Data structures:
- stacks
- queues
- graphs
- trees
c++ concepts:
- templates
- functors
- 'auto' keyword
- range based for loops
- some stl containers, iterators, and algorithms
Algorithms: stacks
- enqueue
- dequeue
- clone
queues
- enqueue
- dequeue
graphs
- creation
- clone
- bfs
- dfs
- find if cycle is present
- is bipartate?
- find path between two nodes
- topological sort
- find MST
- find DAG shortest path
- djikstra
- bellman ford
trees
- creation
- insertion
- deletion
- search
- traversal (inorder)
Data structures:
- heap
- priority queues
- strings
- hash tables
c++ concepts
- More stl
- Inheritance/Polymorphism/Overloading/Overriding/Virtual/friends
- Smart pointers
- Design patterns
- Exception handling
- Memory allocation
- Streams
Algorithms: graphs:
- graph coloring
- negative cycle detection
- floyd-warshall
- control flow based algorithms (loops, dominators, etc)
trees:
- balanced search trees
- red-black trees
- suffix trees
heap and priority queues:
- insert/remove/search, etc
strings:
- sorts
- tries
- substring search
- subsequence search
- regular expressions
- data compression
Algorithms: Large scale processing Coding concepts: Design Pattern, SOLID Principles