数据结构
数据结构是计算机存储、组织数据的方式。
是指相互之间存在一种或多种特定关系的数据元素的集合。
通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率。
常见数据结构之栈
- 数据进入栈模型的过程称为:压/进栈
- 数据离开栈模型的过程称为:弹/出栈
- 栈是一种数据先进后出的模型
常见数据结构之队列
- 数据从后端进入队列模型的过程称为:入队列
- 数据从前端离开队列模型的过程称为:出队列
- 队列是一种数据先进先出的模型
常见数据结构之数组
- 查询数据通过索引定位,查询任意数据耗时相同,查询速度快
- 删除数据时,要将原始数据删除,同时后面每个数据前移,删除效率低
- 添加数据时,添加位置后的每个数据后移,再添加元素,添加效率极低
常见数据结构之链表
- 链表的每个元素叫结点
- 包含存储位置(地址)、存储具体的数据、下一个结点的地址
- 头结点head ^ 空地址
- 链表是一种增删快的模型(对比数组)
- 链表是一种查询慢的模型(对比数组)
常见数据结构之哈希表
哈希表
- JDK8之前, 底层采用数组+链表实现,可以说是-一个元素为链表的数组
- JDK8以后, 在长度比较长的时候,底层实现了优化