数据结构与算法基础01-基本概念

程序 = 数据结构 + 算法

今天打算把数据结构重新系统的学习一遍。

1,数据结构的研究内容

实际问题 – 数学模型 – 分析问题 – 提取关系 – 数学语言描述

1.1数据

包括数值型数据和非数值型数据

1.2数据元素:指的是一个元组

数据的基本单位,在计算机程序中作为一个整体考虑
例如 元素 记录 结点 顶点

1.3数据项:指的是元组中的一个单独项

构成数据元素的不可分割的最小单位
数据结构与算法基础01-基本概念_第1张图片

1.4数据对象

性质相同的数据元素的集合,可以使一个表。

·

1.5数据结构:数据元素相互之间的关系成为结构

·

1.5.1数据元素之间的逻辑关系——逻辑结构

A第一种划分方法

1,线性结构(线性表 栈 队列 串)
有且仅有一个开始节点和一个终端节点,并且所有节点都最多有一个直接前驱和一个直接后继

2,非线性结构(树 图)
一个接待你可能有多个直接前驱和直接后继

B第二种划分方式

四种基本逻辑结构:

1,集合结构:结构中的数据源数除了同属于同一个集合的关系以外,没有其他关系

2,线性结构:结构中的数据元素之间存在一对一的线性关系

3,树形结构:结构中的数据元素之间存在一对多的层次关系

4,图状结构或网状结构:结构中数据元素之间存在着多对多的任意关系

1.5.2物理结构(存储结构)

1,顺序存储结构:
用连续存储单元依次存储数据元素,数据元素之间的逻辑关系由元素的存储位置来表示,例如C语言的数组

2,链接存储结构

用一组任意存储单元存储数据元素,数据元素之间的逻辑关系用指针来表示,例如C语言中用指针来实现链式存储结构。

3,索引存储结构
存储节点信息的同时,还建立附加的索引表,例如手机通讯录

4,散列存储结构
根据结点的关键字直接计算出该结点的存储地址

1.6存储结构与逻辑结构的关系

存储结构是逻辑关系的映像与元素本身映像
逻辑结构是数据结构的抽象,存储结构是数据结构的实现

你可能感兴趣的:(数据结构)