▼
什么是数据结构
-
计算机存储以及组织数据的方式
-
也可以理解为,有一堆数据,他们之间有些特殊的关系.
▼
常见的数据结构
-
线性表(数组 链表 栈 队列)
-
树
-
图
▼
逻辑结构
数据结构从逻辑上看,分为下面几种结构:
1. 集合结构
这种结构注意看,里面有很多元素,但是这些元素之间是没有什么关系的 类似我们OC里面的NSSet NSMutableSet
2. 线性结构
顺序存储结构
这组存储单元内存地址是连续的.
-
链式存储结构
这组存储单元内存地址可以是连续的,也可以是不连续的.它不要求逻辑上相邻的元素在物理位置上也相邻.
▼
线性表
1. 什么是线性表
-
线性表就是多个具有相同特性的数据元素(节点)组成的,有限而且有序的集合
-
当线性表的节点个数为0时,我们称之为空表
-
线性表第一个元素称为首节点,最后一个元素称为尾节点
-
比如某个线性表的元素a1 a2 a3 a4 ......a99 。那么a1...a98 都是a99的前驱,a98是a99的直接前驱
-
比如某个线性表的元素a1 a2 a3 a4 ......a99 。那么a2...a98 都是a1的后继,a2是a1的直接后继
2. 线性表的顺序存储结构
-
顺序存储结构
-
线性表的链式存储结构
-
链式存储结构
用一组地址连续的存储单元依次存储线性表的数据元素
用一组任意的存储单元存储线性表中的数据元素,它的存储单元可以是连续的,也可以是不连续的
,