问题与简答
数据结构与算法篇
衡量、比较算法优劣的指标
空间复杂度S(n)、时间复杂度T(n)
链表有哪些
单向链表、双向链表、循环链表
线性结构
- 线性表
线性表是由同一类型的数据元素构成的有序序列的线性结构
实现方式: 线性存储、链式存储
- 堆栈
堆栈可以认为是具有一定约束的线性表,插入和删除操作都作用在一个称为栈顶的端点位置
- 队列
队列是一个有序线性表,但队列的插入和删除是分别在线性表的两个不同端点进行的
树
- 查找
顺序查找、二分查找
二叉树
二叉搜索树
平衡二叉树
散列查找
散列表
散列函数的构造方法
数字型关键字、字符串关键字
- 处理冲突的方法
开放地址法、链地址法
排序
- 选择排序
简单选择排序、堆排序
- 插入排序
简单插入排序、希尔排序
- 交换排序
冒泡排序、快速排序
归并排序
基数排序
桶排序、基数排序
跳跃表
其他
KPM
布隆过滤器
贪心算法
回溯算法
动态规划
最小生成树
最短路径
推荐算法
深度优先、广度优先