算法数据的数据结构

可以转换成图来记忆

一维数据结构

  • 数组array linkedList

  • 高级: 栈stack、队列queue、双端队列deque、集合set、映射map等

二维数据结构

  • 基础:数tree、图graph

  • 高级:二叉搜索数binary search tree(红黑树、AVL)堆heap、并查集desjoint set、字典树 trie,etc

特殊数据结构

  • 位运算Bitwise、布隆过滤器BloomFilter
  • LRU Cache

算法的八大点知识

  1. if-else,switch ->branch
  2. for, while loop ->iteration
  3. 递归Recursion(Divide&Conquer,Backtrace)
  4. 搜索Search:深度优先搜索Depth first search,广度优先搜索Breadth first serach,A*,etc
  5. 动态规划Dynamic Programming
  6. 二分查找Binary Search
  7. 贪心Greedy
  8. 数学Math,几何Geometry