233 数据结构之栈和列
数据结构是计算机存储、组织数据的方式。是指相互之间存在一种或多种特定关系的数据元素的集合。
通常情况下,精心选择的数据结构可以带来更高的运行、存储效率。
(数据结构)【栈】
栈顶、栈底
数据进入栈模型称为:压栈or进栈
- 第一个进栈的元素位于:栈底
- 末一个进栈的元素位于:栈顶
ABCD
---
数据离开栈模型称为:弹栈or出栈
- 栈顶的元素:最先出栈
- 栈底的元素:最后出栈
DCBA
(数据结构)【队列】
前端、后端
数据进入队列称为:入队列
- 第一个元素从后端入队列
ABCD
---
数据离开队列称为:出队列
- 第一个元素从前端出队列
ABCD
234 数据结构之数组和链表
(数据结构)【数组】
查询数据,可通过索引定位、查询数据,查询任意数据耗时相同,查询效率高
删除数据,要将原始数据删除,同时后面每个数据前移,删除效率低
添加数据,添加位置后的每个数据后移,添加效率低
(数据结构)【链表】
结点,地址,数据
> 地址,结点的存储位置
head头结点
在链表里,每个结点存储下一个结点的地址
【需求】
添加结点B,地址为54。
- 已知A指向37,37为C。
- 把A的指向改为54,则A指向B,
- 把B的指向改为37,则B指向C
【需求】
删除结点C
- 已知B指向37,37是C,96是D
- 让B指向96的D
- 删除C
【小结】
(对比数组而言)
增删,快
查询链表,必须从头开始找,查找效率慢