数据结构

数据:对客观事物的符号表示,在计算机科学中指所有能输入到计算机中并被计算机程序处理的符号的总称。

数据元素:数据的基本单位;

数据项:一个数据元素由若干数据项组成;数据项是数据不可分割的最小单位;

数据对象:性质相同的数据元素的集合,数据的子集;

四者关系: 数据相当于数据库,数据对象相当于某一张数据表,数据元素相当于一条记录,数据项相当于某个字段.


结构:数据元素不是孤立存在的,而是存在某种关系,这种数据元素相互之间的关系称为结构.
数据结构:相互之间存在一种或多种特定关系的数据元素的集合.

通常数据的逻辑结构有四类:

  1. 集合:数据元素除了同属一个集合别无其他关系;
  2. 线性结构:数据元素存在一对一的关系;
  3. 树形结构:数据元素存在一对多关系;
  4. 图状结构网状结构:数据元素存在多对多关系;

物理结构存储结构:数据结构在计算机中的表示或映像;包括数据元素的表示和关系的表示。
元素结点:在计算机中,我们用一个由若干位组合起来形成的一个位串表示一个数据元素,称这个位串为元素或结点。元素或结点可看成数据元素在计算机中的映像。
顺序映像对应顺序存储结构
非顺序映像对应链式存储结构
数据的存储结构有:
1)顺序存储,把逻辑相邻的结点存储在物理上相邻的存储单元内。
2)链接存储,结点间的逻辑关系由附加指针字段表示。
3)索引存储,存储结点信息的同时,建立附加索引表,有稠密索引和稀疏索引。
4)散列存储,按结点的关键字直接计算出存储地址。


数据类型:一个值的集合和定义在这个值集上的一组操作的总称;
原子类型:值不可分解;例如基本类型;
非原子类型结构类型:值由若干成分按某种结构组成;
抽象数据类型:一个数据模型及定义在该模型的一组操作;


线性表:一个线性表是n个数据元素的有限序列;同一线性表中元素具有相同特性;
线性表顺序表示:用一组地址连续的存储单元依次存储线性表的数据元素;
顺序表:线性表按照顺序存储结构存储表示;
线性表的链式表示:用一组任意的存储单元存储线性表的数据元素;(存储单元可以是连续也可以是不连续)
线性链表单链表:n个结点链接成一个链表,链表中结点只包含一个指针域;


:限定仅在表尾进行插入或者删除操作的线性表;LIFO
栈的应用:数制转换、括号匹配、行编辑程序、表达式求值、迷宫求解、递归;
队列:FIFO线性表,一头插入,一头删除;
双端队列:在表的两头进行插入和删除操作;
链队列
循环队列

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容