Data Structure and Algorithms

  • knowing about the basic operations provided by the data structure, which operations are efficient, which are not?
  • knowing about for what use case we can utilize the certain kind of data structure?

Data Structure


1 String

  • Substring, Subsequence, Pattern

2 Linked List

  • Basic Operation (delete, remove, find middle, merge)
  • Reverse
  • Cycle

3 Stack

  • Monotone Stack

4 Heap

5 Tree

  • Tree Traversal(DFS, BFS)
  • Tree Lowest Common Ancestor
  • Path, Recursion
Tree Categories
  • Complete Binary Tree, Full Binary Tree, Perfect Binary Tree
  • Binary Search Tree
  • Binary Indexed Tree
  • Segmented Tree

5 Graph

  • Detect Cycle, DFS, BFS
  • Directed Graph, Topological Sort

Advanced Data Structure


1 Union-Find

2 Trie

3 Segment Tree

4 Binary Indexed Tree

Algorithms


1 Sort

  • Selection Sort, Bubble Sort, Insertion Sort
  • Merge Sort, Quick Sort, Heap Sort
  • Sort Colors, Wiggle Sort
  • External Sort
  • Sorted Array, Duplicates
  • Rotated Sorted Array, Peak Array

3 DFS

  • DFS + Memorization => DP GAME

4 BFS

5 Dynamic Programming

  • Sequence
  • Double Sequence

Frequent Topic


  • Data Stream & Sliding Window
  • Boyer-Moore Voting Algorithm
  • Cache
  • Interval Problem
  • Serialization & Deserialization
Share