电子科技大学:《软件技术基础 Fundamental of Software Technology》课程教学资源(课件讲稿)第三章 数据结构 3.1 数据结构基本概念

电子斜技大学 软件技术基础 3.1数据结构基本概念 主讲教师:刘民岷 航空航天学院 软件技术基础课程组
软件技术基础 主讲教师:刘民岷 航空航天学院 软件技术基础课程组

1、什么是数据结构 程序=数据结构+算法 数据结构的定义:讨论和研究计算机系统中数据的组织形式及 相互关系 数据:用计算机对客观事物进行识别、存储和加工所进行的描 述,统称为数据,其基本单位是数据元素(数据节点),例如: 十进制,二进制常数、字母、字符、程序段、图形图像、语音 文件等 结构:指事物间的相互关系和约束 Nicklaus Wirth 电子科技大学刘民岷 数据结构基本概念 (Pascal之父)
电子科技大学 刘民岷 数据结构基本概念 2 程序 = 数据结构+算法 – 数据结构的定义:讨论和研究计算机系统中数据的组织形式及 相互关系 – 数据:用计算机对客观事物进行识别、存储和加工所进行的描 述,统称为数据,其基本单位是数据元素(数据节点),例如: 十进制,二进制常数、字母、字符、程序段、图形图像、语音 文件等 – 结构:指事物间的相互关系和约束 Nicklaus Wirth (Pascal之父)

2、 数据结构三层次 1)数据的逻辑结构 数据元素间的逻辑关系 -线性结构:线性表 B 1 一非线性结构:数、图 2)数据的存储结构—数据在计算机中的存储方式 顺序存储:把逻辑上相邻的数据元素存储在物理位置上相邻的 存储单元中。 链接存储(数据项指针):al,a2,a3..an 索引存储:建立索引表(关键字·地址),稠密索引(Dense Index)、 稀疏索引(Sparse Index) 一散列存储:关键字→地址 3)数据操作集合 一查找、排序、遍历、插入、更新、删除 电子科技大学刘民岷 数据结构基本概念 3
电子科技大学 刘民岷 数据结构基本概念 3 1)数据的逻辑结构——数据元素间的逻辑关系 – 线性结构:线性表 – 非线性结构:数、图 2)数据的存储结构——数据在计算机中的存储方式 – 顺序存储:把逻辑上相邻的数据元素存储在物理位置上相邻的 存储单元中。 – 链接存储(数据项|指针):a1,a2,a3…an – 索引存储:建立索引表(关键字·地址),稠密索引(Dense Index)、 稀疏索引(Sparse Index) – 散列存储:关键字→地址 3)数据操作集合 – 查找、排序、遍历、插入、更新、删除 B 1 2 3 E

3、 数据的常见物理存储结构 1)顺序存储结构 ·把数据元素按某种顺序存放在一块连续的存储单元中的 存储形式。数据结点结构: 数据域 dl d2 0t。4国 dn 特点: ■连续存放;逻辑上相邻,物理上也相邻。 ■结构简单,易实现。 ■插入、删除操作不便(需大量移动元素)。 电子科技大学刘民岷 数据结构基本概念 4
电子科技大学 刘民岷 数据结构基本概念 4 1)顺序存储结构 • 把数据元素按某种顺序存放在一块连续的存储单元中的 存储形式。数据结点结构: • 特点: ▪ 连续存放;逻辑上相邻,物理上也相邻。 ▪ 结构简单,易实现。 ▪ 插入、删除操作不便(需大量移动元素)。 d1 d2 …… dn 数据域

数据的常见物理存储结构(续) 2)链式存储结构 以链表形式将数据元素存放于任意存储单元中,可连续存放, 也可以不连续存放,以指针实现链表间的联系。数据结点结 构: 数据域 指针域 dl d2 dn 特点: ■非连续存放,借助指针来表示元素间的关系; ■插入、删除操作简单,只要修改指针即可; ■结构较复杂,需要额外存储空间。 电子科技大学刘民岷 数据结构基本概念 5
电子科技大学 刘民岷 数据结构基本概念 5 2)链式存储结构 • 以链表形式将数据元素存放于任意存储单元中,可连续存放, 也可以不连续存放,以指针实现链表间的联系。数据结点结 构: • 特点: ▪ 非连续存放,借助指针来表示元素间的关系; ▪ 插入、删除操作简单,只要修改指针即可; ▪ 结构较复杂,需要额外存储空间。 d1 d2 ... dn ^ 数据域 指针域

数据的常见物理存储结构(续) 3)索引存储结构 数据按索引形式存放。存储时分为:数据项和索引号;通过 索引表记录逻辑号(关键字)和物理号(地址)之间的对应 关系。数据结点结构: 关键字 地址 序 号: 2 3 4 5 6 7 地址: 12 21 35 2 45 5 10 关键字: 4 3 2 7 1 6 5 特点: ■非连续存放; ■ 检索速度快; ·增、删操作简单。 电子科技大学刘民岷 数据结构基本概念 6
电子科技大学 刘民岷 数据结构基本概念 6 3)索引存储结构 • 数据按索引形式存放。存储时分为:数据项和索引号;通过 索引表记录逻辑号(关键字)和物理号(地址)之间的对应 关系。数据结点结构: 序 号: 1 2 3 4 5 6 7 地址: 关键字: • 特点: ▪ 非连续存放; ▪ 检索速度快; ▪ 增、删操作简单。 12 21 35 2 45 5 10 4 3 2 7 1 6 5 关键字 地址

3、数据的常见物理存储结构(续) 4)散列存储结构 在数据元素与存储位置之间建立一种存储关系F,根据 这种关系F,已知元素E,就可以得到它的存储地址,即 D=F(E)。 ·哈希查找中的哈希表就是这样一种存储结构。 特点: 数据元素间无内在联系, ■存储形式不定。 电子科技大学刘民岷 数据结构基本概念 7
电子科技大学 刘民岷 数据结构基本概念 7 4)散列存储结构 • 在数据元素与存储位置之间建立一种存储关系F,根据 这种关系F,已知元素E,就可以得到它的存储地址,即 D=F(E)。 • 哈希查找中的哈希表就是这样一种存储结构。 特点: ▪ 数据元素间无内在联系; ▪ 存储形式不定
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 电子科技大学:《软件技术基础 Fundamental of Software Technology》课程教学资源(课件讲稿)第二章 操作系统 2.11 设备管理及数据传送控制方式.pdf
- 电子科技大学:《软件技术基础 Fundamental of Software Technology》课程教学资源(课件讲稿)第二章 操作系统 2.10 页式管理及虚拟存储技术.pdf
- 电子科技大学:《软件技术基础 Fundamental of Software Technology》课程教学资源(课件讲稿)第二章 操作系统 2.9 分区管理.pdf
- 电子科技大学:《软件技术基础 Fundamental of Software Technology》课程教学资源(课件讲稿)第二章 操作系统 2.8 存储管理概述.pdf
- 电子科技大学:《软件技术基础 Fundamental of Software Technology》课程教学资源(课件讲稿)第二章 操作系统 2.7 死锁及解除.pdf
- 电子科技大学:《软件技术基础 Fundamental of Software Technology》课程教学资源(课件讲稿)第二章 操作系统 2.6 进程互斥和同步.pdf
- 电子科技大学:《软件技术基础 Fundamental of Software Technology》课程教学资源(课件讲稿)第二章 操作系统 2.5 进程调度.pdf
- 电子科技大学:《软件技术基础 Fundamental of Software Technology》课程教学资源(课件讲稿)第二章 操作系统 2.4 处理机管理概述.pdf
- 电子科技大学:《软件技术基础 Fundamental of Software Technology》课程教学资源(课件讲稿)第二章 操作系统 2.3 操作系统功能.pdf
- 电子科技大学:《软件技术基础 Fundamental of Software Technology》课程教学资源(课件讲稿)第二章 操作系统 2.2 操作系统发展历史.pdf
- 电子科技大学:《软件技术基础 Fundamental of Software Technology》课程教学资源(课件讲稿)第二章 操作系统 2.1 操作系统概述.pdf
- 电子科技大学:《软件技术基础 Fundamental of Software Technology》课程教学资源(课件讲稿)第一章 计算机基础 1.3 计算机系统的构成及工作原理.pdf
- 电子科技大学:《软件技术基础 Fundamental of Software Technology》课程教学资源(课件讲稿)第一章 计算机基础 1.2 基于二进制的信息表述.pdf
- 电子科技大学:《软件技术基础 Fundamental of Software Technology》课程教学资源(课件讲稿)第一章 计算机基础 1.1 计算科学发展简史.pdf
- 电子科技大学:《软件技术基础 Fundamental of Software Technology》课程教学资源(课件讲稿)课程概述(刘民岷).pdf
- 电子科技大学:《软件技术基础 Fundamental of Software Technology》课程教学资源(电子教案,刘民岷).pdf
- 电子科技大学:《软件技术基础 Fundamental of Software Technology》课程教学资源(教学大纲,刘民岷).pdf
- 电子科技大学:《计算机操作系统》课程教学资源(教学大纲).doc
- Thru-the-wall Eavesdropping on Loudspeakers via RFID by Capturing Sub-mm Level Vibration.pdf
- Spin-Antenna:3D Motion Tracking for Tag Array Labeled Objects via Spinning Antenna.pdf
- 电子科技大学:《软件技术基础 Fundamental of Software Technology》课程教学资源(课件讲稿)第三章 数据结构 3.2 线性结构之线性表(一).pdf
- 电子科技大学:《软件技术基础 Fundamental of Software Technology》课程教学资源(课件讲稿)第三章 数据结构 3.2 线性结构之线性表(二).pdf
- 电子科技大学:《软件技术基础 Fundamental of Software Technology》课程教学资源(课件讲稿)第三章 数据结构 3.3 堆栈和队列(一).pdf
- 电子科技大学:《软件技术基础 Fundamental of Software Technology》课程教学资源(课件讲稿)第三章 数据结构 3.3 堆栈和队列(二).pdf
- 电子科技大学:《软件技术基础 Fundamental of Software Technology》课程教学资源(课件讲稿)第三章 数据结构 3.4 数组.pdf
- 电子科技大学:《软件技术基础 Fundamental of Software Technology》课程教学资源(课件讲稿)第三章 数据结构 3.5.1 树的基本概念.pdf
- 电子科技大学:《软件技术基础 Fundamental of Software Technology》课程教学资源(课件讲稿)第三章 数据结构 3.5.2 二叉树的基本概念.pdf
- 电子科技大学:《软件技术基础 Fundamental of Software Technology》课程教学资源(课件讲稿)第三章 数据结构 3.5.3 二叉树的操作.pdf
- 电子科技大学:《软件技术基础 Fundamental of Software Technology》课程教学资源(课件讲稿)第三章 数据结构 3.6.1 图的基本概念.pdf
- 电子科技大学:《软件技术基础 Fundamental of Software Technology》课程教学资源(课件讲稿)第三章 数据结构 3.6.2 图的物理存储.pdf
- 电子科技大学:《软件技术基础 Fundamental of Software Technology》课程教学资源(课件讲稿)第三章 数据结构 3.6.3 图的遍历.pdf
- 电子科技大学:《软件技术基础 Fundamental of Software Technology》课程教学资源(课件讲稿)第三章 数据结构 3.7.1 查找(一).pdf
- 电子科技大学:《软件技术基础 Fundamental of Software Technology》课程教学资源(课件讲稿)第三章 数据结构 3.7.2 查找(二).pdf
- 电子科技大学:《软件技术基础 Fundamental of Software Technology》课程教学资源(课件讲稿)第三章 数据结构 3.8.1 排序(一).pdf
- 电子科技大学:《软件技术基础 Fundamental of Software Technology》课程教学资源(课件讲稿)第三章 数据结构 3.8.2 排序(二).pdf
- 电子科技大学:《软件技术基础 Fundamental of Software Technology》课程教学资源(课件讲稿)第四章 数据库 4.1 数据库基础.pdf
- 电子科技大学:《软件技术基础 Fundamental of Software Technology》课程教学资源(课件讲稿)第四章 数据库 4.2 数据模型.pdf
- 电子科技大学:《软件技术基础 Fundamental of Software Technology》课程教学资源(课件讲稿)第四章 数据库 4.3 关系模型.pdf
- 电子科技大学:《软件技术基础 Fundamental of Software Technology》课程教学资源(课件讲稿)第四章 数据库 4.4.1 结构化查询语言SQL(一).pdf
- 电子科技大学:《软件技术基础 Fundamental of Software Technology》课程教学资源(课件讲稿)第四章 数据库 4.4.2 结构化查询语言SQL(二).pdf