第4章数据结构.ppt





《第4章数据结构.ppt》由会员分享,可在线阅读,更多相关《第4章数据结构.ppt(183页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第4章数据结构 Still waters run deep.流静水深流静水深,人静心深人静心深 Where there is life,there is hope。有生命必有希望。有生命必有希望1.1基本数据结构与算法基本数据结构与算法-1.1.11.1.1数据结构的基本概念数据结构的基本概念数据结构的基本概念数据结构的基本概念(P27P27)一一.数据结构的定义数据结构的定义1.数据:数据:信息载体,能够被计算机识别、存储和信息载体,能够被计算机识别、存储和加工处理。可以是加工处理。可以是数值数据数值数据(整数、实数整数、实数),也,也可以是可以是非数值数据非数值数据(声音、图像等声音、图像
2、等)。2.数据项数据项:是数据的具有独立含义的不可分割的是数据的具有独立含义的不可分割的最小最小标识单位标识单位,如成绩表中学号如成绩表中学号,姓名。姓名。3.数据元素(数据元素(又称结点、记录又称结点、记录)一个数据元素由一个数据元素由若干数据项若干数据项组成组成,是数据是数据的的基本单位基本单位,通常作为一个整体进行考虑和处,通常作为一个整体进行考虑和处理。理。学号学号姓名姓名系系别别住址住址电话电话981111李洪李洪机械机械六舍六舍5371111982111王王刚刚电电子子四舍四舍5372111983211王将王将计计算机算机五舍五舍5373211983212张张强强机械机械六舎六舎5
3、3722214个数据元素个数据元素5个数个数据项据项1个数个数据项据项1个数个数据元素据元素1.数据对象数据对象:具有具有相同性质相同性质的的数据元素的数据元素的集合集合。是数据的一个子集。是数据的一个子集。例例:成绩表成绩表学号学号姓名姓名系系别别住址住址电话电话981111李洪李洪机械机械六舍六舍5371111982111王王刚刚电电子子四舍四舍5372111983211王将王将计计算机算机五舍五舍5373211983212张张强强机械机械六舎六舎53722211.1基本数据结构与算法基本数据结构与算法一一.数据结构的定义数据结构的定义1.数据:数据:2.数据项数据项:3.数据元素:数据元
4、素:1.1.11.1.1数据结构的基本概念数据结构的基本概念数据结构的基本概念数据结构的基本概念 (P27P27)数据对象数据对象-由由4 4个记录组成个记录组成,表中每行是一个记录表中每行是一个记录,每个每个记录由记录由5 5个数据项组成个数据项组成.学号学号姓名姓名系系别别住址住址电话电话981111李洪李洪机械机械六舍六舍5371111982111王王刚刚电电子子四舍四舍5372111983211王将王将计计算机算机五舍五舍5373211983212张张强强机械机械六舎六舎53722211.1基本数据结构与算法基本数据结构与算法一一.数据结构的定义数据结构的定义1.1.11.1.1数据结
5、构的基本概念数据结构的基本概念数据结构的基本概念数据结构的基本概念 (P27P27)关键码:关键码:值唯一能区别不同的值唯一能区别不同的数据元素的数据项数据元素的数据项1.1基本数据结构与算法一一.数据结构的定义数据结构的定义1.数据:数据:2.数据项数据项:3.数据元素:数据元素:1.数据对象数据对象:1.1.11.1.1数据结构的基本概念数据结构的基本概念数据结构的基本概念数据结构的基本概念 (P27P27)5.数据结构数据结构:相互之间存在着一种或多种相互之间存在着一种或多种关系关系的的数据元素数据元素的集合。的集合。1)1)研究研究 内容内容数据的逻辑结构数据的逻辑结构:各数据元素之间
6、的逻辑关系各数据元素之间的逻辑关系数据的存储结构数据的存储结构:各数据元素在各数据元素在计算机计算机中的存储关系中的存储关系对各种数据结构进行的运算对各种数据结构进行的运算:添加,删除,排序等。添加,删除,排序等。1.1基本数据结构与算法基本数据结构与算法一一.数据结构的定义数据结构的定义1.数据:数据:2.数据项数据项:3.数据元素:数据元素:1.数据对象数据对象:1.1.11.1.1数据结构的基本概念数据结构的基本概念数据结构的基本概念数据结构的基本概念 (P27P27)5.数据结构数据结构:相互之间存在着一种或多种相互之间存在着一种或多种关系关系的的数据元素数据元素的集合。的集合。2)2
7、)研究研究 目的目的一是提高数据处理的一是提高数据处理的速度速度.二是尽量二是尽量节省节省在数据处理过程中所在数据处理过程中所占用的计算机存储占用的计算机存储空间空间.1.1基本数据结构与算法基本数据结构与算法一一.数据结构的定义数据结构的定义1.数据:数据:2.数据项数据项:3.数据元素:数据元素:1.数据对象数据对象:1.1.11.1.1数据结构的基本概念数据结构的基本概念数据结构的基本概念数据结构的基本概念 (P27P27)5.数据结构数据结构:相互之间存在着一种或多种相互之间存在着一种或多种关系关系的的数据元素数据元素的集合。的集合。3)3)常见的数常见的数据结构类型据结构类型集合集合
8、元素间为松散的关系元素间为松散的关系(属于关系属于关系)线性结构线性结构元素间为一对一关系元素间为一对一关系树形结构树形结构元素间为一对多关系元素间为一对多关系图状结构图状结构元素间为多对多关系元素间为多对多关系学号姓名语文数学C语言1001张三8554921002李四9284641003王五877473.通迅录、成绩单、花名册通迅录、成绩单、花名册通迅录、成绩单、花名册通迅录、成绩单、花名册线性结构线性结构线性结构线性结构电子字典、家谱、目录电子字典、家谱、目录电子字典、家谱、目录电子字典、家谱、目录树型结构树型结构树型结构树型结构HBCDEFGAHGFECDBA计算机中的目录结构问题计算机
9、中的目录结构问题树图状结构图状结构图状结构图状结构树型结构特点树型结构特点结点间具有分层次的连接关系结点间具有分层次的连接关系通迅录、成绩单、花名册通迅录、成绩单、花名册通迅录、成绩单、花名册通迅录、成绩单、花名册线性结构线性结构电子字典、家谱、目录、电子字典、家谱、目录、电子字典、家谱、目录、电子字典、家谱、目录、计算机中的目录结构问题计算机中的目录结构问题树型结构树型结构交通线路、通信网络交通线路、通信网络交通线路、通信网络交通线路、通信网络图形结构图形结构图形结构图形结构图形结构特点图形结构特点结点间的连结是任意的,结点间的连结是任意的,数据元素之间存在多个对多个关系。数据元素之间存在多
10、个对多个关系。AEBCD1.1基本数据结构与算法一一.数据结构的定义数据结构的定义1.数据:数据:2.数据项数据项:3.数据元素:数据元素:1.数据对象数据对象:1.1.11.1.1数据结构的基本概念数据结构的基本概念数据结构的基本概念数据结构的基本概念 (P27P27)5.数据结构数据结构:相互之间存在着一种或多种相互之间存在着一种或多种关系关系的的数据元素数据元素的集合。的集合。4)4)包含包含 信息信息表示数据表示数据元素的信息元素的信息表示各数据元素之间的表示各数据元素之间的前后件关系前后件关系几种基本数据结构的节点图几种基本数据结构的节点图:叶子结点叶子结点根结点根结点根节点根节点:
11、在数据结构中在数据结构中,没有前件的节点没有前件的节点称为根结点称为根结点.叶子节点叶子节点:没有后件的结点没有后件的结点称为终端结点或叶子结点称为终端结点或叶子结点叶子结点叶子结点有关概念有关概念(补充补充):结点结点:组成数据结构的数据元素称为一个结点。组成数据结构的数据元素称为一个结点。前后件关系前后件关系:数据元素之间的固有关系可以用前后件关系数据元素之间的固有关系可以用前后件关系(前驱与后继前驱与后继关系关系)描述。举例:家庭成员辈分关系描述。举例:家庭成员辈分关系(父亲、儿子、女儿父亲、儿子、女儿),“父亲父亲”是是“儿子儿子”和和“女儿女儿”的前件,的前件,“儿子儿子”和和“女儿
12、女儿”是是“父亲父亲”后件。后件。根结点根结点1.1基本数据结构与算法基本数据结构与算法一一.数据结构的定义数据结构的定义1.数据:数据:2.数据项数据项:3.数据元素:数据元素:1.数据对象数据对象:5.数据数据结构结构1.1.11.1.1数据结构的基本概念数据结构的基本概念数据结构的基本概念数据结构的基本概念 (P27P27)二二.数据结构的逻辑结构(数据结构的逻辑结构(P27-P28)数据的逻辑结构:数据的逻辑结构:数据之间的相互关系,被称为数据的逻辑结构数据之间的相互关系,被称为数据的逻辑结构逻辑结构分类:逻辑结构分类:根据数据结构中各数据元素之间的前后件关系根据数据结构中各数据元素之
13、间的前后件关系的复杂程度的复杂程度,一般将数据逻辑结构分为一般将数据逻辑结构分为:线性结构与非线性结构线性结构与非线性结构1.1基本数据结构与算法基本数据结构与算法一一.数据结构的定义数据结构的定义1.数据:数据:2.数据项数据项:3.数据元素:数据元素:1.数据对象数据对象:5.数据数据结构结构1.1.11.1.1数据结构的基本概念数据结构的基本概念数据结构的基本概念数据结构的基本概念 (P27P27)二二.数据结构的逻辑结构(数据结构的逻辑结构(P27-P28)线性结构:线性结构:数据元素之间存在数据元素之间存在一个对一个一个对一个的前后次序关系的前后次序关系 特点特点:有且只有一个根结点
14、有且只有一个根结点 每个结点最多有一个前件,也最多有一个后件每个结点最多有一个前件,也最多有一个后件非线性结构:非线性结构:一个数据结构如果不是线性结构,则称之为一个数据结构如果不是线性结构,则称之为 非线性结构。非线性结构。特点特点:数据元素的前后关系复杂,数据元素的前后关系复杂,一个结点既可以有一个结点既可以有多个前件,也可以有多个后件多个前件,也可以有多个后件,如,如集合集合、树型、图形结构树型、图形结构属于非线性结构。属于非线性结构。集合结构集合结构:数据元素间的关系是属于同一个集合数据元素间的关系是属于同一个集合 树型结构:树型结构:数据元素之间存在一个对多个的关系数据元素之间存在一
15、个对多个的关系图形结构:图形结构:数据元素之间存在多个对多个的关系数据元素之间存在多个对多个的关系 1.1基本数据结构与算法一.数据结构的定义1.数据:2.数据项:3.数据元素:1.数据对象:5.数据结构1.1.11.1.1数据结构的基本概念数据结构的基本概念数据结构的基本概念数据结构的基本概念 (P27P27)二二.数据结构的逻辑结构(数据结构的逻辑结构(P27-P28)三三.数据结构的存储结构(数据结构的存储结构(P27-P28)1.1.定义:定义:数据的逻辑结构在数据的逻辑结构在计算机存储空间计算机存储空间中的存放形式中的存放形式。数据存储结构中不仅存。数据存储结构中不仅存放各数据元素信
16、息,还存放前后件关系放各数据元素信息,还存放前后件关系的信息。的信息。1.1基本数据结构与算法基本数据结构与算法一一.数据结构的定义数据结构的定义二二.数据结构的逻辑结构(数据结构的逻辑结构(P27-P28)1.1.11.1.1数据结构的基本概念数据结构的基本概念数据结构的基本概念数据结构的基本概念 (P27P27)三三.数据结构的存储结构(数据结构的存储结构(P27-P28)1.定义:定义:2.特点:特点:存储结构研究的是存储结构研究的是逻辑结构用计算机语言逻辑结构用计算机语言实现,实现,依赖于依赖于计算机语言。计算机语言。一种一种一种一种数据结构可以根据需要采用数据结构可以根据需要采用数据
17、结构可以根据需要采用数据结构可以根据需要采用多种不同的存储多种不同的存储多种不同的存储多种不同的存储结构结构结构结构,常用的存储结构有顺序、链接与索引等存储,常用的存储结构有顺序、链接与索引等存储,常用的存储结构有顺序、链接与索引等存储,常用的存储结构有顺序、链接与索引等存储方式。方式。方式。方式。数据的数据的数据的数据的存储结构不同存储结构不同存储结构不同存储结构不同,解决问题的,解决问题的,解决问题的,解决问题的方法就有所方法就有所方法就有所方法就有所不同不同不同不同,数据处理的,数据处理的,数据处理的,数据处理的效率也是不同效率也是不同效率也是不同效率也是不同的。的。的。的。1.1基本数
18、据结构与算法1.1.11.1.1数据结构的基本概念数据结构的基本概念数据结构的基本概念数据结构的基本概念 (P27P27)根据数据结构中各数据元素之间的前后件根据数据结构中各数据元素之间的前后件关系的复杂程度关系的复杂程度,一般将数据结构分为一般将数据结构分为:线性结构与非线性结构线性结构与非线性结构线性结构:线性结构:数据元素之间存在数据元素之间存在一个对一个一个对一个的前后次序关系的前后次序关系 特点特点:有且只有一个根结点有且只有一个根结点 每个结点最多有一个前件,也最多有一个后件每个结点最多有一个前件,也最多有一个后件非线性结构:非线性结构:一个数据结构如果不是线性结构,则称之为一个数
19、据结构如果不是线性结构,则称之为非线性结构。非线性结构。特点特点:数据元素的前后关系复杂,数据元素的前后关系复杂,一个结点既可以有一个结点既可以有多个前件,也可以有多个后件多个前件,也可以有多个后件,如树型、图形结构属于非,如树型、图形结构属于非线性结构线性结构三三.数据结构的存储结构(数据结构的存储结构(P27-P28)1.1.定义:定义:2.特点特点3.3.实现方式:实现方式:(1)顺序存储方顺序存储方式式:逻辑上逻辑上相邻的元素存储在相邻的元素存储在物理位置相邻物理位置相邻的存的存储单元中储单元中。主要用于线性结构。主要用于线性结构。通常借助于数组来实现。通常借助于数组来实现。顺序存储结
20、构的线性表顺序存储结构的线性表线性表线性表(a1,a2,a3,a4)存储单元的存储单元的地址即物理地址即物理地址地址逻辑上相邻的元素存储在物理位置逻辑上相邻的元素存储在物理位置相邻的存储单元中相邻的存储单元中。1.1基本数据结构与算法1.1.11.1.1数据结构的基本概念数据结构的基本概念数据结构的基本概念数据结构的基本概念 (P27P27)根据数据结构中各数据元素之间的前后件根据数据结构中各数据元素之间的前后件关系的复杂程度关系的复杂程度,一般将数据结构分为一般将数据结构分为:线性结构与非线性结构线性结构与非线性结构线性结构:线性结构:数据元素之间存在数据元素之间存在一个对一个一个对一个的前
21、后次序关系的前后次序关系 特点特点:有且只有一个根结点有且只有一个根结点 每个结点最多有一个前件,也最多有一个后件每个结点最多有一个前件,也最多有一个后件非线性结构:非线性结构:一个数据结构如果不是线性结构,则称之为一个数据结构如果不是线性结构,则称之为非线性结构。非线性结构。特点特点:数据元素的前后关系复杂,数据元素的前后关系复杂,一个结点既可以有一个结点既可以有多个前件,也可以有多个后件多个前件,也可以有多个后件,如树型、图形结构属于非,如树型、图形结构属于非线性结构线性结构三.数据结构的存储结构(P27-P28)1.1.定义:定义:2.特点特点3.3.实现方式:实现方式:(1)顺序存储方
22、顺序存储方式式:逻辑上逻辑上相邻的元素存储在相邻的元素存储在物理物理位置相邻位置相邻的存储单元中的存储单元中。主要用于线性结构。主要用于线性结构。通通常借助于数组来实现。常借助于数组来实现。(2)链式链式存储方存储方式式:对逻辑上相邻的元素对逻辑上相邻的元素不要求其不要求其物理地址相邻,物理地址相邻,元素间逻辑关系通过附加的指针元素间逻辑关系通过附加的指针字段来表示。通常借助于字段来表示。通常借助于指针类型指针类型实现。实现。链式链式存储结构的线性表存储结构的线性表指针域:用于存指针域:用于存放结点所在的存放结点所在的存储单元的地址储单元的地址a1,a2在逻辑在逻辑上相邻上相邻,而在而在机内存
23、储时机内存储时,存储单元的存储单元的地址地址(100,105)并并不相邻不相邻.链式链式存储方存储方式特点式特点:每个每个结点结点由两部分组成:一部分存放数据,另一部由两部分组成:一部分存放数据,另一部分分存储存储指向前件或后件结点的指针域。指向前件或后件结点的指针域。逻辑上相邻的结点物理上不必相连。逻辑上相邻的结点物理上不必相连。数据运算数据运算(插入和删除等插入和删除等)灵活。灵活。存储单元存储单元的地址即的地址即物理地址物理地址链式存储结构的线性表链式存储结构的线性表线性表线性表(a1,a2,a3,a4)链式链式存储结构的线性表存储结构的线性表逻辑结构为线性结构的线性表(逻辑结构为线性结
24、构的线性表(a1,a2,a3,a4)存储方式比较:存储方式比较:顺序顺序存储结构存储结构顺序存储结构:顺序存储结构:逻辑上相邻的结点物理上必相连。逻辑上相邻的结点物理上必相连。链式存储结构的线性表:链式存储结构的线性表:逻辑上相邻的结点物理上逻辑上相邻的结点物理上不不必相连。必相连。1.1基本数据结构与算法1.1.11.1.1数据结构的基本概念数据结构的基本概念数据结构的基本概念数据结构的基本概念 (P27P27)根据数据结构中各数据元素之间的前后件根据数据结构中各数据元素之间的前后件关系的复杂程度关系的复杂程度,一般将数据结构分为一般将数据结构分为:线性结构与非线性结构线性结构与非线性结构线
25、性结构:线性结构:数据元素之间存在数据元素之间存在一个对一个一个对一个的前后次序关系的前后次序关系 特点特点:有且只有一个根结点有且只有一个根结点 每个结点最多有一个前件,也最多有一个后件每个结点最多有一个前件,也最多有一个后件非线性结构:非线性结构:一个数据结构如果不是线性结构,则称之为一个数据结构如果不是线性结构,则称之为非线性结构。非线性结构。特点特点:数据元素的前后关系复杂,数据元素的前后关系复杂,一个结点既可以有一个结点既可以有多个前件,也可以有多个后件多个前件,也可以有多个后件,如树型、图形结构属于非,如树型、图形结构属于非线性结构线性结构三三.数据结构的存储结构(数据结构的存储结
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构

限制150内