Algorithms

py

It helps you preparing and succeeding in algorithm & data structure interview.

The topics covered are the following:

  • Array: reversing an array, finding a pivot, handling a dynamic array, etc.
  • Bit: operators, bit manipulation, etc.
  • Complexity: algorithm & data structures complexity
  • Dynamic Programming: dynamic programming concept
  • Encoding: encoding theory
  • General: general knowledge including how to approach a problem or testing a first solution
  • Graph: A*, Dijkstra, BFS vs DFS, cycles detection, topological sort, etc.
  • Greedy: greedy algorithms concepts
  • Hash Table: hashtable data structure
  • Heap: heap data structure including min-heap/max heap, binary heap use cases, etc.
  • Linked List: linked list data structure, how to get the middle element, iterate over two lists, doubly linked list, etc.
  • Math: discrete math
  • Queue: queue data structure
  • Recursion: recursion concepts
  • Sort: sort algorithms including concepts, complexity, use cases, etc.
  • Stack: stack data structure
  • String: string permutation, rotation, rabin-karp substring search, etc.
  • Technique: most important techniques to master to solve algorithmic problems including greedy techniques, runner, sliding window, etc.
  • Tree: binary tree use cases, binary search tree, 2-3 tree, red-black tree, use cases, etc.

Cards Index

Array

Bit

Complexity

Dynamic Programming

Encoding

General

Graph

Greedy

Hash Table

Heap

Linked List

Math

Queue

Recursion

Sort

Stack

String

Technique

Tree