出版时间:2009-3-1 出版社:清华大学出版社 作者:李春葆 页数:355
Tag标签:无
前言
数据结构是计算机学科的必修课程,涵盖了计算机学科的算法设计、数值分析、操作系统和编译原理等课程涉及的大部分相关算法的实现。学好该课程不仅对这些后续课程的学习有很大帮助,而且在实际中有广泛的用途。计算机是进行数据处理的工具,数据结构主要研究数据的各种组织形式以及建立在这些结构之上的各种运算算法的实现,它不仅为用计算机语言进行程序设计提供了方法性的理论指导,还在更高的层次上总结了程序设计的常用方法和常用技巧。本教程是作者针对数据结构课程概念多、算法灵活和抽象性强等特点,在总结长期教学经验的基础上编写的。全书分为13章和6个附录,第1章为绪论,介绍数据结构的基本概念,特别强调算法分析的方法;第2章为线性表,介绍线性表的两种存储结构——顺序表和链表与基本运算算法的实现过程;第3章为栈和队列,介绍这两种特殊线性结构的概念与应用;第4章为串,介绍串的概念与模式匹配算法;第5章为数组和广义表,介绍数组、稀疏矩阵和广义表的概念与相关运算算法的实现过程;第6章为递归,较深入地讨论了计算机学科中递归算法设计方法;第7章为树形结构,介绍树和二叉树的概念与各种运算算法的实现过程,其中特别突出二叉树的各种递归算法方法;第8章为图,介绍图的概念和图的各种运算算法的实现过程;第9章为查找,介绍各种查找算法的实现过程;第10章为内排序,介绍各种内排序算法的实现过程;第11章为外排序,介绍各种外排序算法的实现过程;第12章为文件,介绍各类文件的组织结构;第13章为采用面向对象方法描述算法,介绍面向对象的概念和用C++描述数据结构算法的方法。附录A给出了3个综合实验题;附录B给出了实验报告格式;附录C是引用型参数的说明;附录D是顺序表、顺序栈和顺序队列的算法中使用指针引用型参数的说明;附录E给出了书中部分算法清单;附录G为教育部颁发的2009年全国计算机专业数据结构部分考研大纲。数据结构是一门应用性非常强的课程,学生在掌握各种数据结构特别是存储结构的基础上,一定要尽可能多地上机实习,通过较多的实验把难以理解的抽象概念转化为实实在在的计算机能够正确运行的程序,这样才能将所学知识和实际应用结合起来,吸取算法的设计思想和精髓,提高运用这些知识解决实际问题的能力。因此,本教程突出上机实习内容,除最后一章外其余各章都给出大量的上机实验题(属验证设计型实验),供教师和学生选用,附录A还给出3个综合性较强的实验题(属综合设计型实验),目的是全面考查学生综合运用数据结构知识的能力,一般在本课程学习末期或者在专门的数据结构集中实习课(通常为36课时)中向学生布置。
内容概要
本书在前两版的基础上,针对教育部新的考研大纲和大量读者来信提出的要求进行了修订。本书内容包括绪论、线性表、栈和队列、串、数组和广义表、递归、树形结构、图、查找、内排序、外排序和文件,还给出了3个综合实验题、实验报告格式、引用型参数的说明、顺序表和顺序栈以及顺序队列使用指针引用型参数的说明、书中部分算法清单、2009年全国计算机专业数据结构考研大纲。 本书适合高等院校计算机及相关专业本科生及研究生使用。
书籍目录
第1章 绪论 1.1 什么是数据结构 1.1.1 数据结构的定义 1.1.2 逻辑结构类型 1.1.3 存储结构类型 1.1.4 数据结构和数据类型 1.2 算法及其描述 1.2.1 什么是算法 1.2.2 算法描述 1.3 算法分析 1.3.1 算法设计的目标 1.3.2 算法效率分析 1.3.3 算法存储空间分析 1.4 数据结构+算法=程序 本章小结 练习题1 上机实验题1第2章 线性表 2.1 线性表及其逻辑结构 2.1.1 线性表的定义 2.1.2 线性表的抽象数据类型描述 2.2 线性表的顺序存储结构 2.2.1 线性表的顺序存储结构——顺序表 2.2.2 顺序表基本运算的实现 2.3 线性表的链式存储结构 2.3.1 线性表的链式存储结构——链表 2.3.2 单链表基本运算的实现 2.3.3 双链表 2.3.4 循环链表 2.4 线性表的应用 2.5 有序表 本章小结 练习题2 上机实验题2第3章 栈和队列 3.1 栈 3.1.1 栈的定义 3.1.2 栈的顺序存储结构及其基本运算实现 3.1.3 栈的链式存储结构及其基本运算的实现 3.1.4 栈的应用举例 3.2 队列 3.2.1 队列的定义 3.2.2 队列的顺序存储结构及其基本运算的实现 3.2.3 队列的链式存储结构及其基本运算的实现 3.2.4 队列的应用举例 本章小结 练习题3 上机实验题3第4章 串 4.1 串的基本概念 4.2 串的存储结构 4.2.1 串的顺序存储结构——顺序串 4.2.2 串的链式存储结构——链串 4.3 串的模式匹配 4.3.1 Brute-Force算法 4.3.2 KMP算法 本章小结 练习题4 上机实验题4第5章 数组和广义表 5.1 数组 5.1.1 数组的基本概念 ……第6章 递归第7章 树和二叉树第8章 图第9章 查找第10章 内排序第11章 外排序第12章 文件第13章 采用面向对象的方法描述算法附录A 综合实验题附录B 实验报告格式附录C 引用型参数的说明附录D 顺序表、顺序栈和顺序队列使用指针引用型参数的说明附录E 书中部分算法清单附录F 全国计算机专业数据结构考研大纲参考文献
章节摘录
插图:第1章 绪论“数据结构”是计算机及相关专业的专业基础课之一,是一门十分重要的核心课程,主要学习用计算机实现数据组织和数据处理的方法。它也为计算机专业的后续课程(如操作系统、编译原理、数据库原理和软件丁程等)的学习打下了坚实的基础。另外,随着计算机应用领域的不断扩大,非数值计算问题占据了当今计算机应用的绝大多数,简单的数据类型已经远远不能满足需要,各数据元素之间的复杂联系已经不是普通数学方程式所能表达的了,无论设计系统软件还是应用软件都会用到各种复杂的数据结构。因此,掌握好数据结构课程的知识,对于提高解决实际问题的能力将会有很大的帮助。实际上,一个“好”的程序无非是选择一个合理的数据结构和好的算法,而好的算法的选择很大程度上取决于描述实际问题所采用的数据结构,所以,要想编写出“好”的程序,仅仅学习计算机语言是不够的,必须扎实地掌握数据结构的基本知识和基本技能。
编辑推荐
《数据结构教程(第3版)》是重点大学计算机系列教材之一。本套教材参照2009计算机联考新大纲编写,包括:《数据结构教程(第3版)》《数据结构教程(第3版)上机实验指导》《数据结构教程(第3版)学习指导》主教材除了介绍“数据结构”课程的一般知识外,深入剖析递归算法设计方法,介绍了递归方法在数据结构中运用技巧、突出上机实习内容,每章都给出大量的上机实验题,供教师和学生选用。强调实验动手能力的提高,每章给出与内容相一致的上机实验题。配套的《数据结构教程(第3版)学习指导》和《数据结构教程(第3版)上机实验指导》两书,构成一个完整的教学系列。本套教材的编写得到武汉大学教务部“数据结构综合教学改革”和“数据结构精品课程建设”教学项目的支持,集本课程组许多教师多年来数据结构课程教学研究和教学改革经验和成果于一体。
图书封面
图书标签Tags
无
评论、评分、阅读与下载