顶部
收藏

数据结构(C++版)


作者:
吉根林 陈波
定价:
27.00元
ISBN:
978-7-04-040560-6
版面字数:
390.000千字
开本:
16开
全书页数:
280页
装帧形式:
平装
重点项目:
暂无
出版时间:
2014-08-25
读者对象:
高等教育
一级分类:
计算机/教育技术类
二级分类:
计算机类专业核心课程
三级分类:
数据结构

本书是江苏省精品课程“数据结构”的建设成果。全书共10章,介绍了各种常用的数据结构(线性表、栈和队列、串、数组和特殊矩阵、广义表、树和二叉树、图)的基本概念、逻辑关系、存储结构、操作运算及其实现算法;阐述了各种常用的查找算法和排序算法,并对各种算法的性能进行分析。书中使用C++类定义各种数据结构,利用C++伪代码描述算法,并给出了许多经典算法和典型题例。每章均附有小结、习题和上机实验题,附录给出了6套课程考试样卷和5道课程设计题。

本书既注重基本原理,又重视算法实现;既体现先进性,又强调实用性;内容丰富,重点突出,条理清晰,由浅入深,语言流畅,具有特色。本书的PPT课件和相关教学资源可从江苏省精品课程和南京师范大学精品课程“数据结构”网站http://computer.njnu.edu.cn/datastructure/index.asp下载。

本书可作为高等学校计算机类专业及相关专业“数据结构”课程的教材,也可供从事计算机软件开发人员参考。

  • 前辅文
  • 第1章 绪论
    • 1.1 数据结构课程的研究内容
    • 1.2 基本概念及术语
    • 1.3 算法与算法分析
      • 1.3.1 算法
      • 1.3.2 算法分析
    • 本章小结
    • 习题1
    • 上机实验题1
  • 第2章 线性表
    • 2.1 线性表的基本概念
    • 2.2 线性表的存储结构
      • 2.2.1 顺序存储结构
      • 2.2.2 链式存储结构
    • 2.3 线性表的操作算法
      • 2.3.1 顺序表的操作算法
      • 2.3.2 链表的操作算法
    • 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 串的基本操作算法
      • 4.3.2 串的模式匹配
      • 4.3.3 串的应用
    • 本章小结
    • 习题4
    • 上机实验题4
  • 第5章 数组和特殊矩阵
    • 5.1 数组
      • 5.1.1 数组的基本概念
      • 5.1.2 数组的存储结构
    • 5.2 特殊矩阵的压缩存储
      • 5.2.1 对称矩阵的压缩存储
      • 5.2.2 三角矩阵的压缩存储
      • 5.2.3 对角矩阵的压缩存储
      • 5.2.4 稀疏矩阵的压缩存储
    • 本章小结
    • 习题5
    • 上机实验题5
  • 第6章 广义表
    • 6.1 广义表的概念
    • 6.2 广义表的存储结构
      • 6.2.1 广义表中结点的结构
      • 6.2.2 广义表的存储结构
    • 6.3 广义表的操作算法
      • 6.3.1 构造算法
      • 6.3.2 遍历广义表
      • 6.3.3 广义表的其他操作算法
    • 本章小结
    • 习题6
    • 上机实验题6
  • 第7章 树和二叉树
    • 7.1 树的概念和性质
      • 7.1.1 树的定义
      • 7.1.2 树的基本术语
      • 7.1.3 树的基本性质
    • 7.2 二叉树的概念和性质
      • 7.2.1 二叉树的定义
      • 7.2.2 二叉树的基本性质
    • 7.3 二叉树的存储结构
      • 7.3.1 二叉树的顺序存储结构
      • 7.3.2 二叉树的链式存储结构
    • 7.4 二叉树的遍历
      • 7.4.1 二叉树遍历的概念
      • 7.4.2 二叉树遍历算法
      • 7.4.3 二叉树的构造和析构算法
    • 7.5 二叉树的其他操作算法
    • 7.6 线索二叉树
      • 7.6.1 线索二叉树的概念
      • 7.6.2 线索二叉树的存储结构
      • 7.6.3 线索二叉树的操作算法
    • 7.7 树的存储结构与算法
      • 7.7.1 树的存储结构
      • 7.7.2 树的操作算法
    • 7.8 Huffman树与Huffman编码
      • 7.8.1 Huffman树的定义
      • 7.8.2 Huffman树的构造
      • 7.8.3 Huffman编码算法
      • 7.8.4 Huffman译码算法
      • 7.8.5 Huffman树的其他应用——程序设计流程优化
    • 7.9 等价类问题
      • 7.9.1 等价类问题
      • 7.9.2 等价类的实现
      • 7.9.3 性能分析与改进
    • 本章小结
    • 习题7
    • 上机实验题7
  • 第8章 图
    • 8.1 图的基本概念
      • 8.1.1 图的定义
      • 8.1.2 图的基本术语
    • 8.2 图的存储结构
      • 8.2.1 邻接矩阵表示法
      • 8.2.2 邻接表表示法
    • 8.3 图的遍历
      • 8.3.1 图遍历的概念
      • 8.3.2 深度优先搜索
      • 8.3.3 广度优先搜索
      • 8.3.4 图遍历算法的应用
    • 8.4 最小生成树
      • 8.4.1 最小生成树的概念及其性质
      • 8.4.2 Prim算法
      • 8.4.3 Kruskal算法
    • 8.5 最短路径
      • 8.5.1 最短路径的概念
      • 8.5.2 单源最短路径
      • 8.5.3 每对顶点之间的最短路径
    • 8.6 AOV网与拓扑排序
      • 8.6.1 有向无环图与AOV网的概念
      • 8.6.2 拓扑排序
    • *8.7 AOE网与关键路径
      • 8.7.1 AOE网的概念
      • 8.7.2 关键路径
    • 本章小结
    • 习题8
    • 上机实验题8
  • 第9章 查找
    • 9.1 查找的基本概念
    • 9.2 顺序表的查找
      • 9.2.1 顺序查找
      • 9.2.2 折半查找
      • 9.2.3 分块查找
    • 9.3 树表的查找
      • 9.3.1 二叉排序树
      • 9.3.2 平衡二叉树
      • 9.3.3 B树
      • 9.3.4 B+树
    • 9.4 Hash查找
      • 9.4.1 Hash查找的基本概念
      • 9.4.2 Hash表的构造
      • 9.4.3 Hash查找算法及分析
    • 本章小结
    • 习题9
    • 上机实验题9
  • 第10章 排序
    • 10.1 排序的基本概念
    • 10.2 冒泡排序
    • 10.3 选择排序
    • 10.4 插入排序
      • 10.4.1 直接插入排序
      • 10.4.2 折半插入排序
    • 10.5 希尔排序
    • 10.6 快速排序
    • 10.7 堆排序
    • 10.8 归并排序
      • 10.8.1 二路归并排序的非递归实现
      • 10.8.2 二路归并排序的递归实现
    • 10.9 基数排序
      • 10.9.1 多关键字排序
      • 10.9.2 链式基数排序
    • 本章小结
    • 习题10
    • 上机实验题10
  • 附录
    • 附录A 数据结构试题
      • A.1 数据结构试题A
      • A.2 数据结构试题B
      • A.3 数据结构试题C
      • A.4 数据结构试题D
      • A.5 数据结构试题E
      • A.6 数据结构试题F
    • 附录B 数据结构课程设计题
  • 参考文献

相关图书