- 1、本文档共89页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
内 容 简 介 为什么要学习数据结构? 作为计算机程序组成部分的数据结构和算法的研究,一直受到计算机领域工作者的高度重视。数据结构是计算机专业教学计划中的一门核心课程,也是信息管理、通信电子、自动控制等与计算机技术关系密切的专业的一门基础课程。 要从事与计算机科学与技术相关的工作,尤其是计算机应用领域的开发和研制工作,必须具备坚实的数据结构的基础。 数据结构课程的教学目的 数据结构课程的教学目的是使学生学会分析研究计算机所要加工处理的数据的特征,掌握组织数据、存储数据和处理数据的基本方法,并加强在实际应用中选择合适的数据结构和相应算法的训练。 为什么用面向对象的观点来描述数据结构? 面向对象技术是软件工程领域中的重要技术,它不仅是一种程序设计方法,更重要的是一种对真实世界的抽象思维方式。 目前,面向对象的软件分析和设计技术已发展成为软件开发的主流方法。为了适应软件开发方法与技术的发展以及应用领域的要求,就有必要改进和充实数据结构的教学内容。 因此,用面向对象的观点来描述数据结构就成为一种既顺理成章又紧迫的选择。 采用C++描述数据结构 用面向对象的观点来描述数据结构,要涉及到面向对象程序设计语言的选用问题。 目前被广泛采用作为程序设计语言教学的是C语言,C++是以C语言为基础的、使用比较普遍的面向对象程序设计语言。因此本书采用了C++作为数据结构的描述语言。 数据结构课程的特点 数据结构课程内容丰富,学习量大; 隐藏在各部分内容中的方法和技术多; 贯穿于全书的动态链表存储结构和递归技术令不少初学者望而生畏。 本书的编写者长期来从事数据结构课程的教学,对该课程的教学特点和难点有比较深切的体会。 作者的努力 作者在认真总结二十多年讲授数据结构课程的基础上参考了美国ACM/IEEE CS所颁布的《计算2001教程》,吸收了国内外各种数据结构教材的优点,对多年来形成的数据结构课程的教学内容进行了合理的剪裁,既强调了数据结构的原理和方法,又注重了其实践性,使之适应于现代大学生的学习特点和要求。 本书的一个重要特点 本书的一个重要特点就是将程序设计的基础与数据结构的方法尽可能的结合起来。第一、二章介绍C++语言时尽可能给出比较完整的程序,使学生能对C++语言有比较全面和深入的了解,也便于上机实习,从而为数据结构课程的实验建立良好的基础。 本书的组织结构 全书共分九章,第一、二章介绍了数据结构、算法及其复杂度的基本概念,对C++作了简单介绍,并叙述了抽象数据类型和面向对象的概念。第三章至第五章介绍了线性结构—线性表、栈、队列、数组、广义表;第六章和第七章介绍了非线性结构—树和图;第八章和第九章分别介绍了查找和排序的方法。 1 绪论 ?1.1??(算法+数据结构)= 程序 计算机神通广大,聪明能干。 计算机的本领是人是用“程序”来“教” 的。 让计算机解题实际上就是为计算机编程序。因而解题的过程就不仅仅是编程序,而是一个包括编程序在内的软件开发过程。 软件不仅仅指程序,而是包括程序以及开发程序的过程中所产生的各种文档。软件开发的目标是产生能让计算机有效工作的程序,因此程序是软件的核心。 程序到底是什么呢? N.Wirth给出的一个著名的公式: 算法+数据结构=程序 曾经产生了深远的影响。 现在受到了挑战。 20世纪90年代,面向对象的方法受到了很大的重视,并得到比较广泛的推广和应用。 在面向对象程序设计中,密切相关的数据与过程被定义为一个整体(即对象),而且一旦作为一个整体定义了之后,就可以使用它,而无需了解其内部的实现细节,从而提高软件开发的效率。 封装和数据隐藏是面向对象问题解和面向对象程序设计的基本要素。 算法+数据结构=程序 ? (算法+数据结构)= 程序 本书以面向对象的观点来介绍各种数据结构以及与这些数据结构有关的算法的知识。 第一章将介绍数据结构以及算法的基本概念,并介绍用来描述数据结构和算法的语言C++。 1.2 数据结构的基本概念 计算机科学是一门研究信息表示和处理的科学,人们是用程序来处理信息的。 对程序设计方法进行系统的研究。这不仅涉及到研究程序结构和算法,同时也涉及到研究程序加工的对象。 用计算机解题: 具体问题 ? 数学模型?设计算法和编制程序 从对问题的分析中提取操作的对象,并找出这些操作对象之间的关系,然后用数学的语言加以描述。 1.2.1 两个简单的数据结构实例 例 1-1 人事登记表 线性数据结构 例1-2 一个典型的学校行政机构
您可能关注的文档
- 新编网络经济学(第一篇第一章).ppt
- 汕头市澄海区妇幼保健院住院楼监控工程.doc
- 湖北省图书馆公共文化数字支撑平台网络分发和评估管理系统.doc
- 2024年05月山东烟台市蓬莱区卫健系统事业单位招考聘用41人笔试历年典型题及考点剖析附带答案含详解.docx
- 2024年05月山东烟台招远市卫健系统事业单位招考聘用67人笔试历年典型题及考点剖析附带答案含详解.docx
- 2024年05月安徽芜湖市第二人民医院招考聘用编外工作人员7人笔试历年典型题及考点剖析附带答案含详解.docx
- 2024年05月山东济南市莱芜区教育体育系统事业单位招考聘用93人笔试历年典型题及考点剖析附带答案含详解.docx
- 2024年05月安徽阜阳职业技术学院第二批高层次人才招考聘用32人笔试历年典型题及考点剖析附带答案含详解.docx
- 2024年05月安徽芜湖技师学院招考聘用编外工作人员20人笔试历年典型题及考点剖析附带答案含详解.docx
- 2024年05月山东滨州市滨城区公立医院校园招考聘用47人(吉林医药学院站)笔试历年典型题及考点剖析附带答案含详解.docx
- 2024年05月山东交通职业学院招考聘用博士研究生50人笔试历年典型题及考点剖析附带答案含详解.docx
- 2024年05月安徽芜湖市弋江区老年学校(大学)工作人员特设岗位公开招聘2人笔试历年典型题及考点剖析附带答案含详解.docx
- 2024年05月山东东营河口区教育类事业单位招考聘用22人笔试历年典型题及考点剖析附带答案含详解.docx
- 2024年05月山东交通职业学院招考聘用100人笔试历年典型题及考点剖析附带答案含详解.docx
- 2024年05月山东威海职业学院招考聘用高层次人才2人笔试历年典型题及考点剖析附带答案含详解.docx
- 2024年05月安徽石台县事业单位工作人员33人笔试历年典型题及考点剖析附带答案含详解.docx
- 2024年05月山东滨州市博兴县事业单位公开招聘考察笔试历年典型题及考点剖析附带答案含详解.docx
- 2024年05月安徽蚌埠固镇县湖沟镇选聘村级后备干部7人笔试历年典型题及考点剖析附带答案含详解.docx
- 2024年05月山东省安丘市教育和体育局所属事业单位学校公开2024年招考232名工作人员笔试历年典型题及考点剖析附带答案含详解.docx
- 2024年05月山东临沂临港经济开发区工作人员(5人)笔试历年典型题及考点剖析附带答案含详解.docx
文档评论(0)