第八章排序-中南大学.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第八章排序-中南大学

数据结构 Data Structure;本课程的性质 计算机应用 ;2.学会根据实际问题选择合适的数据结构,设计好的算法,进而运用C/C++/Java等编写好的程序。; 先修:高级语言程序设计、离散数学 后续:算法分析与设计、操作系统、编译原理、人工智能等专业课程;课时安排与记分标准;第1章 绪论 第7章 图 第2章 线性表 第9章 查找 第3章 栈和队列 *第8章 动态存储管理 第4章 串 第10章 排序 第5章 数组和广义表 *第11章 外部排序 第6章 树和二叉树 *第12章 文件;第一章 绪论;1.1 什么是数据结构;Niklaus Wirth (Book, 1976) Algorithms + Data Structures = Programs; 设有一个电话号码薄,记录了n个人的名字和其对应的电话号码。假设按如下形式安排: (a1,b1)、(a2,b2)、(a3,b3)… (an,bn) 其中,ai,bi(i=1,2,…,n) 分别表示某人的名字和对应的电话号码。; 要求:设计一个算法,当给定任何一个人的名字时,该算法能够给出此人的电话号码;如果该电话簿中根本就没有这个人,则报告无此人。;;例3:人机对奕问题;例4:多叉路口交通灯管理问题; 数据结构是一门研究非数值计算的程序设计问题中计算机的操作对象以及它们之间的关系和操作等等的学科。;1.2 基本概念和术语; 其中每个款项称为一个“数据项”;例1:学生成绩管理系统; 当路径通往以前访问过的结点时,使其终止,将网络变成树。旅行树中的一个结点称为一个数据元素。;3、数据对象(Data Object)—性质相同的数据元素的集合。;带结构的数据元素的集合;用三个 4 位的十进制数表示一个 12 位的十进制数;又如:在 2 行 3 列的二维数组中6个元素 {a1, a2, a3, a4, a5, a6} 之间存在两个关系:; 若在 6 个数据元素{a1, a2, a3, a4, a5, a6}之间存在如下的次序关系:; 从关系或结构分,数据结构可归纳为以下四类:;逻辑结构和物理结构(1);数据结构是一个二元组: DS=(D,S) 其中:D是数据元素的有限集,S是D上关系的有限集。; 假设:每个小组由1名教师 T,1~3名研究生 G及1~6名本科生S 组成,小组成员之间的关系是:T指导G,每名G指导1~2名S。定义如下数据结构:; 数据结构在计算机中的表示(映象)称为数据的物理结构,又称为数据的存储结构。;数据的存储结构 ;数据元素的映象方法;(表示?x, y?的方法);链式映象;在不同的编程环境中,;例如:;typedef struct { int y; // 年号 Year int m; // 月号 Month int d; // 日号 Day } DateType; // 日期类型; 数据类型是一个值的集合和定义在该集合上的一组操作的总称 。;例如,C 语言中提供的基本数据类型有:; 不同类型的变量,其所能取值的范围不同,所能进行的操作也不同。; 各种高级程序设计语言中都具有“整数”类型,尽管它们在不同处理器上实现的方法可能不同,但是对程序员而言是“相同的”,因为它们的数学特性相同。;抽象数据类型分类;一、抽象数据类型的定义; 抽象数据类型还包括用户在设计软件系统时自己定义的数据类型。;ADT 两个重要特征;抽象数据类型的描述方法;ADT 抽象数据类型名 { 数据对象:〈数据对象的定义〉 数据关系:〈数据关系的定义〉 基本操作:〈基本操作的定义〉 } ADT 抽象数据类型名; 赋值参数 只为操作提供输入值。 引用参数 以打头,除可提供输入值外,还将返回操作结果。;例:定义抽象数据类型“复数”;基本操作:; GetImag( Z, ImagPart ) 初始条件:复数已存在。 操作结果:用ImagPart返回复数Z的虚部值。;抽象数据类型的实现;typedef struct { float realpart; float imagpart; }Complex;;float GetReal( Complex Z );

文档评论(0)

tangtianxu1 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档