顺序表:将具有“一对一”逻辑关系的数据按照次序连续存储到一整块物理空间上的存储结构就是顺序存储结构,成为顺序表
1:元素连续存储的
2:元素的类型相同
3:表的大小是固定的
*4:只有查找和尾部操作不需要挪动元素之外其他的都需要
*5:只要得到元素下表,就能快速查找,查找的时间复杂度为O (1)
顺序表的使用场景:
1:查找频率 > 元素删除,添加的频率
2:元素的个数较少,有上限
链表:
链表的特点
1:存储不连续存储
2:元素类型相同
*3:表的大小不固定(理论上无上限,取决于内存)
*4:删除和查找相对方便
*5:查找的时间复杂度为O(n)
链表的使用场景:
1:元素个数较多,个数不确定
2:不要求连续存储
3:查找操作的频率 < 添加和删除操作
重要点:
1:插入
2:删除
3:链表逆序
4:链表排序
5:链表的合并
6:检查链表是否有环
线性表:
1:元素之间存在“一对一”的关系
2:第一个元素没有前趋
3:最后一个元素没有后继
4:中间元素有且仅有一个前趋和后继
5:元素类型相同
类型 | |||
---|---|---|---|
结构 | 逻辑结构 | 按照元素之间的关系划分的结构 | 集合,线性结构,层次结构,图 |
存储结构 | 按照元素的存储类型划分的结构 | 顺序结构,链式结构 |