- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
?教材和参考书 ?教材: 缪淮扣等.数据结构 ?C++实现.北京:科学出版社.2002,7,第1版. ?主要参考书: 殷人昆.数据结构(用面向对象方法与C++语言描述)(第2版).北京:清华大学出版社,2007.6 严蔚敏,吴伟民.数据结构(C语言版).北京:清华大学出版社,1997,4 ? Ftp服务: 3 Username: hjshi Password: 123456 课程的性质、任务与目的 课程的性质、任务与目的 课程的性质、任务与目的 “数据结构” 课程内容的形成和发展 为什么用面向对象的观点来描述数据结构? 面向对象技术是软件工程领域中的重要技术,它不仅是一种程序设计方法,更重要的是一种对真实世界的抽象思维方式。 目前,面向对象的软件分析和设计技术已发展成为软件开发的主流方法。为了适应软件开发方法与技术的发展以及应用领域的要求,就有必要改进和充实数据结构的教学内容。 因此,用面向对象的观点来描述数据结构就成为一种很自然的选择。 采用C++描述数据结构 用面向对象的观点来描述数据结构,要涉及到面向对象程序设计语言的选用问题。 目前被广泛采用作为程序设计语言教学的是C语言,C++是以C语言为基础的、使用比较普遍的面向对象程序设计语言。因此我们所采用的教材是用C++作为数据结构的描述语言的。 教材内容的组织结构 全书共分九章。 第一、二章介绍了数据结构、算法及其复杂度的基本概念,对C++作了简单介绍,并叙述了抽象数据类型和面向对象的概念。 第三章至第五章介绍了线性结构—线性表、栈、队列、数组、广义表; 第六章和第七章介绍了非线性结构—树和图; 第八章和第九章分别介绍了查找和排序的方法。 为什么要学习数据结构? 链接 第一章 绪论 ?1.1??(算法+数据结构)= 程序 什么是程序、软件? 计算机功能强大,但计算机的本领是要人用“程序”来“教” 的。 随着计算机应用领域的不断扩大,“程序”越来越大,越来越复杂。因而解题的过程就不仅仅是编程序,而是一个包括编程序在内的软件开发过程。 那么,软件包括什么? 因此,软件不仅仅是指程序,而且是包括程序以及开发程序的过程中所产生的各种文档。软件开发的目标是产生能让计算机有效工作的程序,因此程序是软件的核心。 软件=程序+文档(软件工程的观点) 程序到底是什么呢? 20世纪90年代,面向对象的方法受到了很大的重视,并得到比较广泛的推广和应用。 在面向对象程序设计中,密切相关的数据与过程(操作)被定义为一个整体(即对象),而且一旦作为一个整体定义了之后,就可以使用它,对其内部的实现细节不需要太多的了解,从而提高软件开发的效率。可用封装和数据隐藏来实现。因此, 算法+数据结构=程序 ? (算法+数据结构)= 程序 1.2 数据结构的基本概念 让我们看看用计算机解题(数值问题)的过程: 1.2.1 几个简单的数据结构实例 例 1-1 人事登记表 线性数据结构 例1-3 快速送达疫苗已知五个村子发生了疫情,要将疫苗送达到5个村庄。目标是寻找一条耗时最少的路线。 网络型数据结构(图型结构) 数据结构研究的内容 由以上三个例子可见,描述这类非数值计算问题的数学模型不再是数学方程,而是诸如表、树、图之类的数据结构。因此,从学科(课程)这个角度,简单说来,数据结构是: 一门研究非数值计算的程序设计问题中计算机的操作对象以及它们之间的关系和操作的学科。 1.2.2 什么是数据结构 什么是数据结构? 几个概念: 数据(data): 是信息的载体,是描述客观事物的数、字符、图形、图象、声音以及所有能输入到计算机中并被计算机程序识别和处理的符号的集合。 数据元素(data element): 表示数据的基本单位,由若干个数据项组成。 数据项(data item): 表示数据的最小单位。 数据对象: 数据的子集。自然数集合 ={0, 1, 2, …}是“数”的数据对象;所有的字符是数据,字母集合AS={A, B, …Z, a, b, …, z}是该数据的数据对象。 1.2.2 什么是数据结构 什么是数据结构? 几个概念: 数据(data): 是信息的载体,是描述客观事物的数、字符、图形、图象、声音以及所有能输入到计算机中并被计算机程序识别和处理的符号的集合。 数据元素(data element): 表示数据的基本单位,由若干个数据项组成。 数据项(data item): 表示数据的最小单位。 数据对象: 数据的子集。自然数集合 ={0, 1, 2, …}是“数”的数据对象;所有的字符是数据,字母集合AS={A, B, …
文档评论(0)