算法&数据结构

数据结构

一维:
  • 基础:数组array(string),链表linekd list
  • 高级:栈stack、队列queue、双端队列deque、集合set、映射map(hash or map),etc

二维:
  • 基础:树tree,图graph
  • 高级:二叉搜索树binary search tree (red-black、tree、AVL)

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

算法

  • if-else,switch->branch
  • for,while loop -> Iteration
  • 递归Recusion(Divide & Conquer,Backtrace)
  • 搜索Search:深度优先遍历Depth first search,广度优先搜索Breadth first search,A*,etc
  • 动态规划Dynamic Programming
  • 二分查找Binary Search
  • 贪心Greedy
  • 数学Math,集合Geometry

注意:在头脑中回忆上面每种算法的思想和代码模板

脑图大纲:

image.png

image.png