出版时间:2009-9 出版社:清华大学 作者:王晓东 页数:395
Tag标签:无
前言
21世纪是知识经济的时代,是人才竞争的时代。随着21世纪的到来,人类已步人信息社会,信息产业正成为全球经济的主导产业。计算机科学与技术在信息产业中占据了最重要的地位,这就对培养21世纪高素质创新型计算机专业人才提出了迫切的要求。 为了培养高素质创新型人才,必须建立高水平的教学计划和课程体系。在20多年跟踪分析ACM和IEEE计算机课程体系的基础上,紧跟计算机科学与技术的发展潮流,及时制定并修正教学计划和课程体系是尤其重要的。计算机科学与技术的发展对高水平人才的要求,需要我们从总体上优化课程结构,精炼教学内容,拓宽专业基础,加强教学实践,特别注重综合素质的培养,形成“基础课程精深,专业课程宽新”的格局。 为了适应计算机科学与技术学科发展和计算机教学计划的需要,要采取多种措施鼓励长期从事计算机教学和科技前沿研究的专家教授积极参与计算机专业教材的编著和更新,在教材中及时反映学科前沿的研究成果与发展趋势,以高水平的科研促进教材建设。同时适当引进国外先进的原版教材。 为了提高教学质量,需要不断改革教学方法与手段,倡导因材施教,强调知识的总结、梳理、推演和挖掘,通过加快教案的不断更新,使学生掌握教材中未及时反映的学科发展新动向,进一步拓宽视野。教学与科研相结合是培养学生实践能力的有效途径。高水平的科研可以为教学提供最先进的高新技术平台和创造性的工作环境,使学生得以接触最先进的计算机理论、技术和环境。高水平的科研还可以为高水平人才的素质教育提供良好的物质基础。学生在课题研究中不但能了解科学研究的艰辛和科研工作者的奉献精神,而且能熏陶和培养良好的科研作风,锻炼和培养攻关能力和协作精神。 进入21世纪,我国高等教育进入了前所未有的大发展时期,时代的进步与发展对高等教育质量提出了更高、更新的要求。2001年8月,教育部颁发了《关于加强高等学校本科教学工作,提高教学质量的若干意见》。文件指出,本科教育是高等教育的主体和基础,抓好本科教学是提高整个高等教育质量的重点和关键。随着高等教育的普及和高等学校的扩招,在校大学本科计算机专业学生的人数将大量上升,对适合21世纪大学本科计算机科学与技术学科课程体系要求的,并且适合中国学生学习的计算机专业教材的需求量也将急剧增加。为此,中国计算机学会和清华大学出版社共同规划了面向全国高等院校计算机专业本科生的“21世纪大学本科计算机专业系列教材”。本系列教材借鉴美国ACM和IEEE最新制定的COmputing Currcula 2005(简称CC2005)课程体系,反映当代计算机科学与技术学科水平和计算机科学技术的新发展、新技术,并且结合中国计算机教育改革成果和中国国情。
内容概要
本书以ACM和IEEE/CS Computing Curricula 2005课程体系以及教育部计算机科学与技术教学指导委员会发布的 “高等学校计算机科学与技术本科专业规范”中制定的关于数据结构和算法设计与分析的知识结构和体系为依据,以基本数据结构和抽象数据类型为知识单元而编写。本书一个明显的特色是在STL(Standard Template Library)框架下描述数据结构的设计思想和实现方法,使读者循序渐进地理解数据抽象,面向对象设计方法和泛型算法设计三位一体的面向高层次的现代化软件设计风格。全书共分16章,涵盖 CC2005 课程体系中有关算法与数据结构、知识结构和体系的重要内容,包括算法与数据结构引论、向量、双端队列、表、栈和队列、排序与选择、树、二叉搜索树、平衡搜索树、集合、映射、堆与优先队列、散列、并查集、图与相关算法。 全书采用面向对象的C++语言作为描述语言,以STL的设计理念为描述和实现框架,内容丰富,叙述简明,理论与实践并重,每章设计有应用举例、数据结构与算法实验题,并为任课教师免费提供电子课件和课程实验用数据。 本书可作为高等学校计算机、电子信息、信息与计算科学、信息管理与信息系统等专业数据结构课程教材,也适合工程技术人员和自学者学习参考。
作者简介
王晓东教授,福建省计算机学会理事长。研究领域是算法设计与算法评价,基于计算机网络和信息安全的大规模问题求解算法与数据结构,信息可视化技术,几何计算,并行和分布式算法设计,计算复杂性理论。主持国家自然科学基金项目、国家优秀留学回国人员基金项目、福建省杰出人
书籍目录
第1章 算法与数据结构引论 1.1 算法及其复杂性的概念 1.2 数据结构与抽象数据类型 1.3 用C++描述数据结构与算法 1.4 递归 1.5 标准模板库STL与泛型算法 1.6 应用举例 习题1 数据结构与算法实验1第2章 向量 2.1 向量的基本概念 2.2 抽象数据类型向量 2.3 向量的迭代器 2.4 向量的实现方法 2.5 矩阵与多维向量 2.6 高精度整数 2.7 应用举例 习题2 数据结构与算法实验2第3章 双端队列 3.1 双端队列的基本概念 3.2 抽象数据类型双端队列 3.3 双端队列的实现方法 3.4 双端队列的迭代器 3.5 应用举例 习题3 数据结构与算法实验3第4章 线性表 4.1 表的基本概念 4.2 用数组实现表 4.3 用指针实现表 ……第5章 栈第6章 队列第7章 排序与选择第8章 树第9章 二叉搜索树第10章 平衡搜索树第11章 集合第12章 映射第13章 散列第14章 堆与优先队列第15章 并查集第16章 图参考文献
章节摘录
第1章 算法与数据结构引论 1.1 算法及其复杂性的概念 1.1.1 算法与程序 对于计算机科学来说,算法(algorithm)的概念至关重要。例如在大型软件系统的开发中,设计出有效的算法将起决定性的作用。 算法是由若干条指令组成的有穷序列,且满足下述几条性质。 (1)输入:有若干个由外部提供的量作为算法的输入。 (2)输出:算法产生至少一个量作为输出。 (3)确定性:组成算法的每条指令是清晰,无歧义的。 (4)有限性:算法中每条指令的执行次数有限,执行每条指令的时间也是有限的。 程序(program)是算法用某种程序设计语言的具体实现。程序可以不满足算法的性质(4)。例如操作系统,它是一个在无限循环中执行的程序,因而不是一个算法。然而可把操作系统的各种任务看成是一些单独的问题,每一个问题由操作系统中的一个子程序通过特定的算法来实现。该子程序得到输出结果后便终止。 1.1.2 算法复杂性的概念 一个算法的复杂性的高低体现在运行该算法需要多少计算机资源。所需要的资源越多,算法的复杂性越高。所需要的资源越少,算法的复杂性就越低。最重要的计算机的资源是时间和空间资源。
编辑推荐
《数据结构(STL框架)》是国家精品课程配套教材,根据教育部“高等学校计算机科学与技术专业规范”组织编写,与美国ACM和IEEE Computing Curricula 2005同步。 《数据结构(STL框架)》特色 本教材以ACM和IEEE Comututing Curricula 2005课程体系以及教育部高等学校汁算机科学与技术教学指导委员会制定的“高等学校计算机科学与技术本科专业规范”中关于算法与数据结构的知识结构和体系为依据编写,具有如下特色: 按照算法与数据结构的知识结构和体系为主要内容,采用面向对象的C++语言作为描述语言,以STL的设计理念为描述和实现框架组织编写。为计算学科的学生提供广泛坚实的算法与数据结构的基础知识。 围绕计算学科常用的基本数据结构和基本算法组织教学内容。在概念的编织上,贯穿学科中反复出现的12个基本概念。在内容的组织上,体现计算学科的新概括,融会为学科形态的理论、抽象和设计三个过程。内容丰富,叙述简明,理论与实践并重。 在STL(Standard Template Library)的框架下来描述数据结构的设计思想和实现方法,使读者循序渐进地理解数据抽象,面向对象设计方法和泛型算法设计三位一体的面向高层次的现代化软件设计风格。 用广度与深度兼顾、理论与实践并重的教学策略,迅速培养学生的专业兴趣.在具体知识点的学习中深入探究,逐步培养科学严密的计算思维和创新能力。在STL框架下描述数据结构的设计思想和实现方法,有利于培养学生的抽象思维能力和逻辑推理能力,以及对于具体数据结构的实现和应用能力。 习题设计独具特色。理论分析型的习题侧重于算法与数据结构理论的掌握与扩展,应用实验型的习题则侧重数据结构的实现与具体应用。 为任课教师免费提供电子课件和课程实验型习题测试数据和答案。
图书封面
图书标签Tags
无
评论、评分、阅读与下载