搜索
高级检索
高级搜索
书       名 :
著       者 :
出  版  社 :
I  S  B  N:
文献来源:
出版时间 :
数据结构
0.00    
图书来源: 浙江图书馆(由图书馆配书)
  • 配送范围:
    全国(除港澳台地区)
  • ISBN:
    9787302233596
  • 作      者:
    杨剑主编
  • 出 版 社 :
    清华大学出版社
  • 出版日期:
    2011
收藏
编辑推荐
    教学目标明确,注重理论与实践的结合;教学方法灵活,培养学生自主学习的能力;教学内容先进,强调计算机在各专业中的应用;教学模式完善,提供配套的教学资源解决方案。
展开
内容介绍
    《数据结构》是为“数据结构”课程编写的教材,其内容选取符合教学大纲要求,并兼顾学科的广度和深度,适用面广。《数据结构》共分为9章,全面系统地介绍线性表、队列、堆栈、树、图等基本数据结构,以及这些数据结构在计算机中的存储及算法实现,介绍各种查找及排序算法的实现和效率分析,最后给出了数据结构综合应用实例。书中各种算法采用C语言描述。书中每一章除介绍相关知识点外,还给出了每章教学的建议课时、总体要求、学习重点、习题和上机实训题目,在最后一章的实习实训指导中,给出了实训题目、设计思想和设计过程,这非常有助于教师的教学安排以及学生对重点的掌握,提高其应用能力。
    《数据结构》配有相关素材,包括各章的程序源代码、PPT电子教案、习题答案与解析,可从清华大学出版社网站下载。
    《数据结构》可以作为高等学校计算机类专业学生的教材和参考书,也可作为其他理工类专业的数据结构课程的教学用书,还可以作为计算机相关人员的自学参考书。
展开
精彩书摘
    我们知道,虽然每个人都懂得英语的语法与基本类型,但是对于同样的题目,每个人写出的作文,水平却高低不一。程序设计也和写英语作文一样,虽然程序员都懂得语言的语法与语义,但是对于同样的问题,不同程序员写出来的程序不一样。有的人写出来的程序效率很高,有的人却用复杂的方法来解决一个简单的问题。
    当然,程序设计水平的提高仅仅靠看几本程序设计书是不行的。只有多思索、多练习,才能提高自己的程序设计水平;否则,书看得再多,提高也不大。程序设计水平要想提高,要多看别人写的程序,多去思考问题。从别人写的程序中,可以发现效率更高的解决方法;从思考问题的过程中,可以了解解决问题的方法常常不止一个。运用先前解决问题的经验,来解决更复杂更深入的问题,是提高程序设计水平的最有效途径。
    数据结构正是前人在思索问题的过程中所想出的解决方法。一般而言,在学习程序设计一段时间后,学习“数据结构”便能让你的程序设计水平上一个台阶。如果只学会了程序设计的语法和语义,那么你只能解决程序设计三分之一的问题,而且运用的方法并不是最有效的。但如果学会了数据结构的概念,就能在程序设计上,运用最有效的方法来解决绝大多数的问题。
    “数据结构”这门课程的目的有三个。第一个是讲授常用的数据结构,这些数据结构形成了程序员基本数据结构工具。对于许多常见的问题,这些数据结构是理想的选择。程序员可以直接拿来或经过少许的修改就使用,非常方便。第二个是讲授常用的算法,这和数据结构一样,是人们在长期实践过程中的总结,程序员也可以直接拿来或经过少许的修改就使用,并且可以通过算法训练来提高程序设计水平。第三个目的是通过程序设计的技能训练促进程序员综合能力的提高。
展开
目录
第1章 绪论
1.1 数据结构的作用和意义
1.1.1 数据结构的作用
1.1.2 数据结构的意义
1.2 数据结构的基本概念
1.2.1 基本概念和术语
1.2.2 数据结构的逻辑结构与物理结构
1.3 数据结构的表示
1.4 算法和算法分析
1.4.1 算法的基本概念
1.4.2 算法效率的度量
1.4.3 算法效率分析
1.5 习题

第2章 线性表
2.1 线性表的逻辑结构
2.1.1 线性表的概念
2.1.2 线性表的基本操作
2.1.3 线性表的抽象数据类型描述
2.2 线性表的顺序表示和实现
2.2.1 线性表的顺序表示
2.2.2 顺序表的实现
2.2.3 顺序表的应用
2.3 线性表的链式表示和实现
2.3.1 线性表的链式表示
2.3.2 单链表的实现
2.3.3 循环链表
2.3.4 双向链表
2.3.5 链表的应用
2.4 小结
2.4.1 线性表小结
2.4.2 顺序表和链表的比较
2.5 习题
2.6 实训

第3章 栈和队列
3.1 栈
3.1.1 栈的定义及基本运算
3.1.2 顺序栈
3.1.3 链栈
3.2 队列
3.2.1 队列的定义及基本运算
3.2.2 顺序队列
3.2.3 链队列
3.3 栈和队列的应用举例
3.3.1 栈应用之一:数制转换
3.3.2 栈应用之二:括号匹配
3.3.3 栈应用之三:表达式求值
3.3.4 队列应用之一:模拟服务台前的排队现象问题
3.3.5 队列应用之二:模拟打印机缓冲区
3.4 习题
3.5 实训

第4章 串、数组和广义表
4.1 串及其运算
4.1.1 串的基本概念
4.1.2 串的抽象数据类型定义
4.2 串的存储结构
4.2.1 顺序存储结构
4.2.2 链式存储结构
4.3 串运算的实现
4.3.1 串的基本运算
4.3.2 模式匹配
4.4 多维数组
4.5 数组的顺序表示和实现
4.6 矩阵的压缩存储
4.6.1 特殊矩阵
4.6.2 稀疏矩阵
4.7 广义表
4.7.1 广义表的逻辑结构
4.7.2 广义表的存储结构及实现
4.8 习题

第5章 树和二叉树
5.1 树的定义和基本术语
5.1.1 树的定义
5.1.2 树的表示方法
5.1.3 树的术语
5.2 二叉树
5.2.1 二叉树基本概念
5.2.2 二叉树的性质
5.2.3 二叉树的存储结构
5.2.4 二叉树的基本操作及实现
5.3 二叉树遍历
5.3.1 二叉树遍历简介
5.3.2 线索二叉树
5.3.3 线索二叉树的基本操作实现
5.4 树和森林
5.4.1 树的存储结构
5.4.2 树和森林与二叉树之间的转换
5.4.3 树和森林遍历
5.5 哈夫曼树及其应用
5.5.1 最优二叉树(哈夫曼树)
5.5.2 哈夫曼树的构造算法
5.5.3 哈夫曼树在编码问题中的应用
5.6 习题
5.7 实训

第6章 图
6.1 概述
6.1.1 图的定义
6.1.2 图的常用术语及含义
6.2 图的存储结构
6.2.1 邻接矩阵
6.2.2 邻接表
6.3 图的遍历
6.3.1 深度优先搜索
6.3.2 广度优先搜索
6.4 生成树和最小生成树
6.4.1 生成树
6.4.2 最小生成树
6.5 图的应用
6.5.1 最短路径
6.5.2 拓扑排序
6.5.3 关键路径
6.6 习题
6.7 实训

第7章 查找
7.1 基本概念
7.2 静态查找表
7.2.1 顺序查找
7.2.2 折半查找
7.3 动态查找表
7.3.1 二叉排序树
7.3.2 平衡二叉树
7.3.3 B一树
7.4 哈希表
7.4.1 哈希表的概念
7.4.2 台希函数的构建
7.4.3 处理冲突
7.4.4 哈希表的查找及其分析
7.5 习题
7.6 实训

第8章排序
8.1 基本概念
……
第9章 实习实训
展开
加入书架成功!
收藏图书成功!
我知道了(3)
发表书评
读者登录

请选择您读者所在的图书馆

选择图书馆
浙江图书馆
点击获取验证码
登录
没有读者证?在线办证