数据结构是一门研究非数值计算的程序设计问题中计算机的操作对象以及他们之间的关系的操作等的学科。
根据元素之间的关系,数据结构有4种:1集合、2线性结构(头节点无前驱,尾节点无后继)、3树形结构(每个节点只能有一个前驱)、4图形或网状结构。
根据数据元素在计算机中的表示方式,数据结构有4种:1顺序存储结构、2链式存储结构、3索引存储、4散列(哈希)存储。第1种是顺序映像,后3种是非顺序映像。顺序映像是借助元素在存储器中的相对位置来表示。非顺序映像是借助元素存储地址的指针表示数据元素之间的逻辑关系。
*)线性表
**)介绍
L=(a1,…,ai-1,ai,ai+1,…,an),a1线性起点,an线性终点,中间的元素有一个前驱,一个后继。可以对线性表的元素进行“插入”(在L的某个位置i之前插入元素,同时L的长度+1)、“删除”(删除第i个元素,同时L的长度-1)、“访问”(返回L中第i个元素的值)。
LinkedList,ArrayList就是这种数据结构。LinkedList和ArrayList的区别:
**)线性表的顺序表示和实现
用一组地址连续的存储单元依次存储线性表的数据元素。
l(L的小写)是线性表中每个元素需占用的存储单元。那么线性表中第i+1个数据元素的存储位置LOC(ai+1)和第i个数据元素的存储位置LOC(ai)之间的关系:LOC(ai+1)=LOC(ai)+l。以a1为基准,第i个数据元素ai的存储位置:LOC(ai)=LOC(a1)+l。
顺序存储的优缺点:优:①逻辑相邻,物理也相邻②可随机存取任一元素③存储空间使用紧凑
**)链式表示和实现
*)栈和队列
原文:https://www.cnblogs.com/mySummer/p/10616866.html