一、数据结构是什么
数据结构
数据结构可以理解为:数据 + 结构。数据是描述客观事物的符号,为程序操控,存储在计算机上,结构包括数据的逻辑结构和存储结构。在很多书籍以及博客中,对数据结构的解释为数据在计算机的存储方式。
数据的逻辑结构
数据元素间抽象化的相互关系,与数据的存储无关,独立于计算机,但逻辑结构决定元素的输入、存储、发送、处理和信息传递的基本操作功能。逻辑结构有四种基本类型:集合结构、线性结构、树形结构和图形结构。表和树是最常用的两种高效数据结构,许多高效的算法能够用这两种数据结构来设计实现
1.集合结构
由若干元素集合在一起形成的团聚体(或称集合体)相互堆积起来的一种结构类型,数据元素之间无其他的关系,仅仅属于同一集合体而已。
2.线性结构
数据元素之间存在一一对应的关系,其开始节点和终端节点具有少数性,除了开始开始节点和终端节点,其他的元素有且仅有一个前驱节点和后继节点,线性表就是一个典型。
3.树形结构
数据元素之间存在着一一对应的关系,每一个数据元素只有一个前驱节点,但是却又很多后继节点 终端节点可以有多个。二叉树就是一个典型。
4.图形结构
又称为非线性结构,数据元素之间存在着多对多的关系,其前驱节点和后继节点的个数可以是任意多个
注:四种逻辑结构存在着关系:树形结构是图形结构的特殊形式,而线性结构又是树形结构的特殊形式。
延伸阅读:
二、顺序存储结构是什么
把逻辑上相邻的数据存储在物理位置上相邻的存储单位里,用物理位置上的相邻来体现逻辑上的相邻,此种存储结构的又在于节省了存储空间,因为分配给数据的存储单元完全用于了数据的存储,数据之间的逻辑关系没有占用存储空间,可以实现对数据的随机存取,每个节点对应一个序号,由这个序号可以计算出数据的存储地址,缺点在于不变于数据的修改,对数据的插入和删除可能要移动一系列的数据。