数据结构=逻辑结构+存储结构+运算/操作
数据的逻辑结构
逻辑结构指元素之间的逻辑关系(与实现无关)
线性结构(一对一):
线性表、栈、队列、串及数组
非线性结构:
树形结构(一对多)、图形结构(多对多)、集合关系(唯一、无序、确定)
数据的存储结构
顺序结构(数组)
优点:
节省存储空间,分配的空间全部
缺点:
插入、删除效率低;
需要提前分配空间,可能会导致空间浪费
链式结构(链表)
优点:插入、删除灵活;不需要空闲的节点;
缺点:查找结点时效率慢;
索引结构
如:字典的目录;
占部分空间,效率得以提升。
散列结构(hash存储)
添加、查询速度快
数据的运算
检索、排序、插入、删除、修改等。
补充
逻辑结构唯一,存储结构不唯一,运算的实现依赖于存储结构