常用数据结构
所属分类 DS
浏览量 722
The top data structures you should know for your next coding interview
https://www.freecodecamp.org/news/the-top-data-structures-you-should-know-for-your-next-coding-interview-36af0831f5e3/
数组 栈 队列 链表 树 图 字典树 哈希表
一维数组
多维数组(数组的数组)
数组的基本操作
insert get delete size
常见的数组问题
找到数组中第二小的元素
找到数组中第一个没有重复的整数
合并两个分类数组
重新排列数组中的正值和负值
栈
撤销 Undo 功能
书堆
LIFO 后进先出
堆栈的基本操作
push
pop
isEmpty
top 返回顶部元素,但不从堆栈中删除
常见的栈问题
计算后缀表达式
检查表达式中的括号是否平衡
队列
FIFO First in First Out
排队 队头 队尾
队列的基本操作
enqueue() 向队列末尾插入元素
dequeue() 从队列头部移除元素
isEmpty()
top() 返回队列的第一个元素
链表
单链表
双链表
链表的基本操作
insertAtEnd 在链表末尾插入指定元素
insertAtHead 在链表头部插入指定元素
delete 从链表中删除指定元素
deleteAtHead 删除链表的第一个元素
search 返回链表中的指定元素
isEmpty
常见的链表问题
翻转列表
检测链表中的循环
返回链表中倒数第 n 个节点
移除链表中的重复值
图
顶点(vertices) 边(x,y)
边可能包含权重/成本
无向图
有向图
邻接矩阵
邻接列表
常见的图遍历算法
广度优先搜索 BFS
深度优先搜索 DFS
常见的图问题
实现广度优先搜索和深度优先搜索
检查一个图是否为树
计算一张图中的边的数量
找到两个顶点之间的最短路径
树
N 叉树
平衡树
二叉树
二叉搜索树
平衡二叉树
红黑树
2-3 树
二叉树和二叉搜索树是最常用的树
常见的树问题
计算二叉树的高度
找出二叉搜索树中第 k 个最大值
找到距离根部“k”个距离的节点
找出二叉树中给定节点的祖先(ancestors)
字典树
前缀树
快速的检索功能,常用于搜索字典中的单词
为搜索引擎提供自动搜索建议
甚至能用于IP路由选择
常见的字典树问题
计算字典树中的总字数
打印存储在字典树中的所有单词
使用字典树对数组的元素进行排序
使用字典树从字典中形成单词
哈希表
性能影响因素
哈希函数
哈希表的大小
碰撞处理方法
常见的哈希问题
找到数组中的对称对
追踪遍历的完整路径
查看一个数组是否为另一个数组的子集
检查给定数组是否不相交
上一篇
下一篇
《算法图解》笔记
数据结构图基础
数据结构之树的性质
概率论词汇
线性代数词汇
微积分词汇