数据结构整理篇。
概念:
线性表(List):零个或多个数据元素的有限序列。
(首先它是一个序列,然后线性表强调是有限的)
线性表的抽象数据类型的定义:
线性表的顺序存储结构 指的是用一段地址连续的存储单元依次存储线性表的数据元素。
存储、读取:O(1)
插入、删除:O(n)
线性表顺序存储结构的优缺点:
优点:
1.无需为表中的逻辑关系增加额外的存储空间
2.可以快速存取表中对象
缺点:
1.插入和删除需要移动大量的对象
2.存储设备的碎片化
3.当线性表过大的时候,很难确定长度
线性表的链式存储结构 指的是用一段地址连续的存储单元依次存储线性表的数据元素。
数组(Array)与链表(Link)的区别:
1). 都是内存真实的数据存储结构
2). 数据结构特点:
数组是一块连续的内存, 通过下标来索引数组中的某个元素数据
链表并不是一块连续的内存黄区域, 它是通过链表中的一个元素对象保持着下一个元素对象的引用来关联的
3). 创建结构对象:
数组必须指定初始化大小,而且不能自动扩容
链表不用指定大小, 它的大小是操作元素对象时动态产生的
4). 添加/删除数据
数组在添加/删除时, 很可能导致移动复制拷贝的问题, 效率不太高
链表在添加/删除时, 只需要修改引用就可以, 效率很高
5). 查询
数组是通过下标来得到对应位置的数据的
链表只能通过从一端开始查找的方式获取数据
------相关资料推荐
大话数据模式