文档数据结构绪论演示.pptx
《文档数据结构绪论演示.pptx》由会员分享,可在线阅读,更多相关《文档数据结构绪论演示.pptx(28页珍藏版)》请在咨信网上搜索。
第第1 1章章 绪论绪论 .第第1 1章章 绪论绪论 1.1 1.1 什么是数据结构什么是数据结构1.2 1.2 数据的逻辑结构和物理结构数据的逻辑结构和物理结构1.3 1.3 算法描述算法描述1.4 1.4 算法分析算法分析1.5 1.5 小结小结习题习题1 1第第1 1章章 绪论绪论 .1.1 什么是数据结构什么是数据结构 数据结构(Data Structure)包括两方面的内容:数据和结构。最简单的数据结构的例子是一维数组。例如:要计算100个数a1,a2,a100的累加和,显然,用赋值语句sum=a1 +a2+a100来描述求和的表达式是极不科学的。我们可以把这100个数以线性排列的结构组成一个一维数组Ai。在此基础上,计算这100个数的累加和的程序段可描述为sum=0;for(i=1;i=100;i+)sum=sum+Ai;第第1 1章章 绪论绪论 .计算结果保存在sum中。这个程序段比sum=a1+a2+a100这样的语句要简明得多,况且在程序设计中不允许书写省略号。上面的程序段实际上包括了两方面的内容:第一是数据结构int A100表示的数组,第二是数组作为数据结构的形式所描述的算法,从而达到使程序设计简明、易读的目的。要用计算机实现对学校的管理,就要经课题调查、研究,按管理的模式确定程序的数据处理模式和流程,如图1-1所示,还要确定具体部门的数据结构形式,如表1-1所示的学生成绩表。第第1 1章章 绪论绪论 .图1-1 学校管理程序流程框图第第1 1章章 绪论绪论 .表1-1 学生成绩表第第1 1章章 绪论绪论 .1.2 1.2 数据的逻辑结构和物理结构数据的逻辑结构和物理结构数据结构作为一门独立的课程是从1968年才开设的。而数据结构课程中的有关内容,如表处理、串处理、树结构等早已散见于计算机的其他课程,如操作系统、编译原理、表处理语言等课程中,但其内容都缺乏规范性和系统性。随着计算机科学的发展和计算机应用的普及,计算机加工、处理的对象已从早期的数值、布尔值扩展到字符串、表格、图像甚至语音等等。这些能被计算机存储、加工的对象称为数据。因此现在认为,数据包含数值和非数值两种类型。第第1 1章章 绪论绪论 .数据通常由数据元素组成,数据元素是数据的基本单位,具有完整、确定的实际意义,在程序中作为一个整体而加以考虑和处理。如表1-1所示的学生成绩表中,每个学生的数据用学号、姓名和各门学科的成绩来表示,这些具体的数值和字符是数据元素。这些数据元素准确地表示了某个学生的学习成绩。在很多情况下,数据元素又由数据项组成,但数据项通常不具有完整、确定的实际意义或不被当作一个整体对待。如在学生成绩表中,“学号”、“姓名”、“C语言”等内容都是数据项,所有数据项中的数据组成了数据元素。因此,每个学生的成绩是一个数据元素,成绩中的每一项都是数据元素中的数据项。第第1 1章章 绪论绪论 .每个项目是作为成绩的一个成分出现的,但单独的项目没有完整确定的实际意义。例如,将表格中第一行的各个数据项拆开,分别地看,则“1”、“张平”、“82”这些数据分别表示一个学号、一个学生名、C语言课程的成绩等,它们各自在学生成绩表中是一个个离散的数据,不能完整地表示某个学生的学习档案,但这些数据项的组合就构成了一个具有完整意义的某学生的学习情况。所以,在由多个数据项所构造的数据元素中,数据项不是数据元素,而每一个项目的组合则是数据元素。第第1 1章章 绪论绪论 .但是,当有些数据元素不能再分解为数据项的组合,即该数据元素仅由一个数据项组成时,这个数据项就是该数据元素自身。现实的世界是信息的世界。所谓信息,就是客观存在的反映,而数据就是信息的表现形式和描述,这种描述是为了能被计算机所识别、存储和处理。而这种描述一般可归结为数字、字符和各种字符的集合,如上例中的学号、姓名、成绩等。值得注意的是,我们研究的数据不是孤立的,而表现出了相互关联的特性。如某学生的姓名以及该学生的学科成绩都作为数据存在,其数据与数据之间的关系为:学生姓名与班级名对应,成绩与学科相匹配。这种数据元素之间存在的相互关系就是数据的结构。这种由设计者建立的数据之间的结构也称为数据之间的逻辑结构。第第1 1章章 绪论绪论 .图1-2所示为四类基本逻辑结构的示意图,它们反映了四类基本的数据组织形式。图中的小圆圈称为结点。一个结点代表一个数据元素。结点之间的连线代表逻辑关系,即相应数据元素之间的邻接关系。第第1 1章章 绪论绪论 .图1-2 四类基本逻辑结构(a)集合;(b)线性结构;(c)树形结构;(d)图状结构第第1 1章章 绪论绪论 .以上的各种逻辑结构就是本书中将要详细介绍的数学模型。关于逻辑结构,有以下几点需特别注意。(1)逻辑结构与数据元素本身的形式、类型、内容无关。(2)逻辑结构与数据元素的相对位置无关。(3)逻辑结构与所含结点个数无关。第第1 1章章 绪论绪论 .1.3 1.3 算法描述算法描述1.3.1 数据结构上的基本操作本书中主要介绍各种算法,并给出部分算法对应的C语言程序。数据结构上的基本操作主要有以下几种:(1)查找:寻找满足特定条件的数据元素所在的位置。(2)读取:读出指定位置上数据元素的内容。(3)插入:在指定位置上添加新的数据元素。(4)删除:删去指定位置上对应的数据元素。(5)更新:修改某个数据元素的值。第第1 1章章 绪论绪论 .根据操作的结果可将操作分为两种基本类型:(1)加工型操作:其操作改变了原逻辑结构的“值”,如数据元素的个数、某数据元素的内容等(一般不考虑改变逻辑结构的类型)。上面所列基本操作的后三种操作均为加工型操作。(2)引用型操作:其操作不改变原逻辑结构的“值”,只是查找或读取。第第1 1章章 绪论绪论 .1.3.2 算法的描述方法以下给出一个在文件操作中进行数据匹配的算法,该算法用C语言描述。假如把文件中每个记录的关键值(区别每个不同记录的数据)均存放于数组中,且又假设该数据已输入指定的数组,要求对文件中的记录做成批处理。我们把待处理文件中的数据称为主文件数据,记为m(j),1jq,它是有序的;把由成批的待处理记录组成的文件称为事务处理文件,其事务处理数据为t(i),1ip,它也是有序的。若m(j)和t(i)的值相等,则说明文件的记录和事务处理文件的记录相匹配。相同数据的m(j)和t(i)合并处理后产生的另一新文件的记录为n(k),r(1)是t文件中的非处理文件,u(k)是m文件中的非活跃文件。图1-3所示的是成批数据匹配流程图,图1-4所示的是数据匹配图。第第1 1章章 绪论绪论 .图1-3 成批数据匹配流程图第第1 1章章 绪论绪论 .图1-4 数据匹配图第第1 1章章 绪论绪论 .这个成批数据匹配过程的算法可以按流程图和数据匹配的原则,按C语言的书写规则,编写成如下的算法,算法中文件记录内的数据都以数组表示。(若该算法中同时产生非活跃文件u(k),则如何修改此算法,请读者在阅读该算法后自行修改和设计。)/*数据匹配算法*/PF(mq,tp)/*m为主文件数组,t为事务处理文件数组,r为非处理文件数组,n为新文件*/intk,j,i,1;k=1=0;j=i=1;while(i=p)第第1 1章章 绪论绪论 .if(j=q)if(ti=mj)k+;nk=ti*mj;j+;i+;elseif(timj)1+;r1=ti;i+;第第1 1章章 绪论绪论 .elsej+;else1+;r1=ti;i+;第第1 1章章 绪论绪论 .1.4 1.4 算法分析算法分析1.4.1 算法设计的要求 通常从以下几个方面评价算法的质量:(1)正确性:算法应能正确地实现预定的功能,即处理要求。(2)易读性:算法应易于阅读和理解,以便于调试、修改和扩充。第第1 1章章 绪论绪论 .(3)健壮性:正确的输入能得到正确的输出,这是算法必须具有的特性之一。(4)高效率:即达到所需的时空性能。一个算法的时空性能是指该算法的时间性能(时间效率)和空间性能(空间效率)。1.4.2算法设计的时间因素如何衡量和评价一个算法的优劣呢?假如所设计的算法在逻辑上是可行的,那么,尽管评价算法的标准很多,通常还是从以下三个方面来考虑:(1)算法在计算机中运行所消耗的时间,即所需的机器时间,也称为时间因素或时间复杂性。第第1 1章章 绪论绪论 .(2)执行算法时,在计算机中所占存储容量的大小,即所需的存储空间,也称为空间因素或空间复杂性。(3)所设计的算法是否易读、易懂,是否容易转换成其他可运行的程序语言。设有程序段表示两个nn的矩阵相乘,其算法描述如下:for(i=1;i=n;i+)/*n+1*/for(j=1;j=n;j+)/*n(n+1)*/ci,j=0;/*n2*/for(k=1;k=n;k+)/*n2(n+1)*/ci,j=ci,j+ai,k*bk,j;/*n3*/*n2*/*n*/第第1 1章章 绪论绪论 .以上程序段的语句总执行次数Xn表示为Xn=(n+1)+n(n+1)+n2+n2(n+1)+n3n3+n2+n=3n3+4n2+3n+1用衡量执行时间的量级来表示为Xn=O(n3)其含义是:执行次数Xn将不超过n3的某个常数倍或Xn的量级与n3成正比。那么如何分析不同算法的执行时间量级呢?O(1)表示算法的执行时间为常量,称该算法为常量阶的;O(n)表示算法的执行时间为线性,称为线性阶;O(n2)为平方阶;O(2n)为指数阶。若两个算法分别为O(1)和O(n),当n充分大时,显然O(1)的执行时间要少,整个算法的速度快。同样,O(n)和O(lbn)相比较,当n充分大时,lbn的值比n小,故O(lbn)所对应算法的速度要快得多。第第1 1章章 绪论绪论 .1.5 1.5 小结小结 数据结构是一门研究数据的逻辑结构和物理结构,以及它们之间的相互关系和所定义的算法在计算机上如何运行的学科。凡能被计算机存储、加工的对象都称为数据。数据通常由数据元素表示,数据元素是数据的基本单位,具有完整、确定的实际意义,在程序中作为一个整体而加以处理。数据元素又由数据项组成,数据项通常不具有完整、确定的实际意义或不被当作一个整体对待。当数据元素不能再分解为数据项的组合时,该数据元素仅由一个数据项组成,这个数据项就是该数据元素本身。第第1 1章章 绪论绪论 .数据元素之间存在的相互关系称作数据的结构,由用户建立的数据之间的结构或关联称作数据之间的逻辑关系。集合、线性结构、树形结构和图状结构是四种基本的逻辑结构。逻辑结构在计算机中的存储形式称作数据的物理结构。本书以C语言来描述各种数据结构的操作运算所对应的算法,为了便于书写和阅读,大多数的算法略去了对变量的说明和约定,又假设了某些数据的存在。第第1 1章章 绪论绪论 .习题习题1 11.1 什么是数据、数据元素和数据项?什么是结构?举例说明两者之间的关系。1.2 什么是逻辑结构和存储结构?两者之间的关系是什么?1.3 什么是数据结构?数据结构研究的主要内容是什么?1.4 在本章成批数据匹配程序的基础上,试编写同时产生非活跃文件u(k)的算法。第第1 1章章 绪论绪论 .1.5 试确定如下程序段中各语句的执行次数和各程序的执行时间量级。(1)i=1;x=0;while(i=n)x=x+i;i=i+1;(2)x=1;for(i=1;i=n;i+)for(j=1;j=i;j+)x=x+1;- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 文档 数据结构 绪论 演示
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【人****来】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【人****来】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【人****来】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【人****来】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文