- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第一章 数据结构
1.1 数据结构的基本概念
1.2 线性结构
1.3 非线性结构
1.4 查找和排序
§1.1数据结构的基本概念
1.1.1 什么是数据结构
早期计算机
仅仅用于简单的计算
决定计算机的效率—运算速度
输入输出的数据量小
数据元素之间的关系简单
不需数据结构
计算机应用
扩展后
大量的非数值运算
决定计算机的效率- CPU速度
及数据之间的关系结构
输入输出的数据量大
数据元素之间的关系复杂
需要数据结构描述数据之间的关系
计算机解一个有关数值计算的具体问题的步骤:
建立数学模型的实质是:分析实际问题,寻找包含在问题中的操作对象,以及这些对象之间的关系,并用数学的语言对这些操作对象和其间的关系加以描述,这就是该问题的数学模型。
建立数学模型设计解模算法编程调试输出结果
数值计算问题中的数学模型通常可用数学方程来描述,但是更多的非数值计算的问题却无法用数学方程来描述其数学模型。
例1 学生成绩查询
这三张查询表就是学生成绩查询的数学模型,各元素间存在线性关系,因此这种数学模型称为线性数据结构。
d
例2 人机对奕问题(五子棋)
对奕的过程是在一定的对奕规则和取胜策略下进行的,因此为使计算机能够灵活对奕必须事先将对奕的规则、以及对奕过程中可能出现的情况和相应的策略都存入计算机。在人机对奕过程中,计算机操作的对象是对奕过程中可能出现的棋局状态(称为格局)。
c
b
a
联想一下,若将一局棋从开始到结束可能出现的格局都画出来,可以得到下面一张图:
因此,对奕问题中的数学模型就是以各种格局为元素的一种“树”结构。可以看出这种树结构中元素的关系不是简单的线性关系,它是另一种典型的数据结构,称为“树结构”。
由此,至少要四种颜色的交通灯才能满足保证交通秩序的要求。
例3 利用交通灯进行多叉路口的交通管理问题
本题中可以用一个圆圈表示一条通路,两个通路之间的矛盾关系用对应两个圆圈的连线表示(圆圈称为顶点、连线称为边),则设置交通灯的问题可以等价为对圆圈的染色问题。要求:
每个顶点染一种颜色。
相连的顶点不能染相同的颜色。
总色类最少。
用计算机来解决这类问题时,要处理的问题是诸如顶点和边这样的元素,数据结构中称这种为图结构,于是这类问题的数学模型就是图这种数据结构。
由此我们可以这样来定义数据结构:
它是一门研究非数值计算的程序设计问题中计算机的操作对象以及它们之间的关系和操作等的学科。
数据结构定义
基本概念和述语
数据(data):对客观事物的符号表示,在计算机中是指所有能输入到计算机中被计算机程序处理的符号的总称。
整数,实数,字符串;图象声音编码→数据
数据元素(data element): 数据的基本单位(也称数据结点)通常作为一个整体考虑,代表一定的特征。一个数据元素可由若干个数据项组成
数据项(data Item):一个数据元素可以由若干个数据项组成,它是数据的不可分割的最小单位。
一、几个概念
例、学生花名册
数据元素
数据
学生名字的集合
每个学生的名字
例、学生成绩表
数据
数据元素
数据项
学生成绩的集合
每个学生的成绩
名字
成绩
基本概念和述语
数据结构:是相互之间存在一种或多种特定关系的数据元素的集合。
数据对象(data object):性质相同的数据元素的集合,是数据的一个子集。
如整数数据对象是集合N={0,1,2,3…...}
字母数据对象是集合C={ a,b,c,d…...}
任何问题中,数据元素都不是孤立存在的,而是在它们之间存在某种关系,这种数据元素相互之间的关系称为结构 (structure)
基本概念和述语
例:家庭成员数据结构可以表示成:
F=(C,R)
C={父亲,儿子,女儿}
R={(父亲,儿子),(父亲,女儿) ,
(儿子,女儿)}
用形式化描述:数据结构是一二元组:
Data_Structure=(K,R)
其中:K是数据元素的有限集合,
R是K上关系的有限集。
基本概念和述语
例:用数据结构描述整数I*
1、组成整数数据的全部元素的集合I
I= {0,±1,±2,±3……}
2、I中元素的关系集合RE
3、I*的运算集合P,比如算术四则运算
4、P中诸运算的运算规则RU,
如乘、除法优先于加
您可能关注的文档
最近下载
- 2021-2025年高考化学真题知识点分类汇编之配合物与超分子.docx VIP
- 血液透析中经常性低血糖的护理查房.docx VIP
- 大学课程《小型水工建筑物设计》PPT课件:2.7 重力坝地基处理.pptx VIP
- {品质管理FMEA}FMEA潜在失效模式及后果分析第四版.pdf VIP
- 四年级下数学教案-小数的意义-青岛版.pdf VIP
- 大学课程《小型水工建筑物设计》PPT课件:2.6 重力坝的材料及构造.pptx VIP
- 急性心肌梗死的心电图诊断(共23张PPT).pptx
- 大学课程《小型水工建筑物设计》PPT课件:2.5 溢流重力坝.pptx VIP
- 肿瘤电场治疗仪注册技术审评报告049.pdf VIP
- 大学课程《小型水工建筑物设计》PPT课件:2.4 非溢流重力坝的剖面设计.pptx VIP
原创力文档


文档评论(0)