算法
- 图搜索 (广度优先、深度优先)深度优先特别重要
- 排序
- 动态规划
- 匹配算法和网络流算法
- 正则表达式和字符串匹配
数据结构
- 图 (树尤其重要)
- Map
- 堆
- 栈/队列
- Tries | 字典树
线性结构:元素之间存在一对一关系常见类型有: 数组,链表,队列,栈,它们之间在操作上有所区别.例如:链表可在任意位置插入或删除元素,而队列在队尾插入元素,队头删除元素,栈只能在栈顶进行插
入,删除操作.
树形结构:元素之间存在一对多关系,常见类型有:树(有许多特例:二叉树、平衡二叉树、查找树等)
图形结构:元素之间存在多对多关系,图形结构中每个结点的前驱结点数和后续结点多个数可以任意
额外推荐
- 贪婪算法
- 概率方法
- 近似算法