数据结构(用C++语言描述)

数据结构(用C++语言描述)
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者: , ,
2016-05
版次: 1
ISBN: 9787563547333
定价: 38.00
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 288页
字数: 482千字
正文语种: 简体中文
5人买过
  •   “数据结构”是计算机专业的核心课程,是从事计算机软件开发和应用人员必修的专业基础课。随着计算机学科的迅速发展,“数据结构”课程也在不断增加新的内容,在不断发展。
      《数据结构》采用能够自然体现抽象数据类型概念的C++语言作为算法描述语言,从线性结构到非线性结构,从简单到复杂,深入描述了各种数据结构内在的逻辑关系及其在计算机中的实现方式和具体的应用。全书的内容包括线性表、栈、队列、数组、串、广义表、树、图、查找以及各种排序方法。此外,对常用的迭代、递归、回溯以及贪心等算法设计技巧,搜索和排序算法做了详尽的描述,并引入了一些比较的数据结构和简单的算法分析。
      《数据结构(用C++语言描述)》可作为高等院校计算机专业、软件专业的本科生教材,同时也可作为准备参加研究生入学考试、自学考试和各类程序设计竞赛人员的参考书。 第1章 绪论
    1.1 数据结构的概念
    1.1.1 为什么要学习数据结构
    1.1.2 数据结构主要研究的内容
    1.2 抽象数据类型的表示和实现
    1.2.1 数据类型
    1.2.2 抽象数据类型
    1.2.3 抽象数据类型表示
    1.2.4 抽象数据类型实现
    1.3 算法和算法分析
    1.3.1 算法定义
    1.3.2 算法描述
    1.3.3 算法性能分析与度量
    1.3.4 常见的算法类型
    本章总结
    练习
    实验

    第2章 线性表
    2.1 线性表的逻辑结构
    2.1.1 线性表的定义
    2.1.2 线性表的抽象数据类型定义
    2.2 线性表的顺序表示和实现
    2.2.1 线性表的顺序表示
    2.2.2 顺序表表示
    2.2.3 顺序表基本操作的实现
    2.2.4 顺序表应用举例
    2.3 线性表的链式表示和实现
    2.3.1 单向链表的概念
    2.3.2 链表的类定义
    2.3.3 链表基本操作的实现
    2.3.4 双向链表
    2.3.5 链表应用实例
    2.4 链表和顺序表的选取
    本章总结
    练习
    实验

    第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 队列
    3.3.1 队列的定义及基本操作
    3.3.2 队列的抽象数据类型
    3.3.3 队列的存储及操作实现
    3.3.4 双端队列
    3.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 广义表的存储结构
    本章总结
    练习
    实验

    第5章 串
    5.1 串的基本概念及抽象数据类型
    5.1.1 串的基本概念
    5.1.2 串的抽象数据类型
    5.1.3 C++有关串的库函数
    5.1.4 串的存储结构
    5.2 串的顺序存储结构及基本操作实现
    5.2.1 串的顺序存储结构
    5.2.2 串的基本操作及实现
    5.2.3 串的模式匹配
    5.3 串的链式存储
    本章总结
    练习
    实验

    第6章 树和二叉树
    6.1 树的定义及表示
    6.1.1 树的定义
    6.1.2 树的表示
    6.2 二叉树
    6.2.1 二叉树的定义
    6.2.2 二叉树的抽象数据类型
    6.2.3 二叉树的存储结构
    6.2.4 二叉树结点类操作实现
    6.2.5 二叉树类操作实现
    6.3 二叉树遍历及其应用
    6.3.1 二叉树遍历的递归算法
    6.3.2 二叉树遍历的应用
    6.3.3 二叉树遍历的非递归算法
    6.4 线索二叉树
    6.4.1 线索二叉树定义
    6.4.2 线索二叉树存储结构
    6.4.3 线索二叉树基本操作
    6.5 树和森林
    6.5.1 树的存储表示
    6.5.2 树和森林的遍历
    6.6 Huffman树及其应用
    6.6.1 最优二叉树概念
    6.6.2 最优二叉树的构造
    6.6.3 Huffman树的应用:Huffman编码
    本章总结
    练习
    实验

    第7章 图
    7.1 图的基本概念
    7.1.1 图的定义和术语
    7.1.2 图的抽象数据类型
    7.2 图的存储结构
    7.2.1 图的邻接矩阵表示
    7.2.2 图的邻接表表示
    7.2.3 图的十字链表表示
    7.2.4 图的邻接多重表表示
    7.3 图的遍历
    7.3.1 深度优先搜索
    7.3.2 广度优先搜索
    7.4 最小生成树
    7.4.1 Prim算法
    7.4.2 Kruskal算法
    7.5 最短路径
    7.5.1 路径的概念
    7.5.2 从一个顶点到其余各顶点的最短路径
    7.5.3 每对顶点之间的最短路径
    7.6 DAG及其应用
    7.6.1 AOV网络与拓扑排序
    7.6.2 AOE网络与关键路径
    本章总结
    练习
    实验

    第8章 查找
    8.1 查找的基本概念
    8.2 静态查找表
    8.2.1 顺序查找
    8.2.2 二分查找
    8.2.3 分块查找
    8.3 树表的查找
    8.3.1 二叉排序树
    8.3.2 平衡二叉树
    8.3.3 红黑树
    8.3.4 B树
    8.3.5 B+树
    8.4 散列表查找
    8.4.1 散列表的基本概念
    8.4.2 哈希函数的构造方法
    8.4.3 处理冲突方法
    本章总结
    练习
    实验

    第9章 内部排序
    9.1 排序的概念及算法性能分析
    9.1.1 排序的概念
    9.1.2 排序算法的性能分析
    9.1.3 排序表类定义
    9.2 插入排序
    9.2.1 直接插入排序
    9.2.2 希尔排序
    9.3 交换排序
    9.3.1 冒泡排序
    9.3.2 快速排序
    9.4 选择排序
    9.4.1 直接选择排序
    9.4.2 堆排序
    9.5 归并排序
    9.5.1 归并
    9.5.2 归并排序算法
    9.6 基数排序
    9.6.1 基数排序思想
    9.6.2 LSD基数排序
    9.7 各种内部排序方法比较
    本章总结
    练习
    实验

    附录 实验总结
    参考文献
  • 内容简介:
      “数据结构”是计算机专业的核心课程,是从事计算机软件开发和应用人员必修的专业基础课。随着计算机学科的迅速发展,“数据结构”课程也在不断增加新的内容,在不断发展。
      《数据结构》采用能够自然体现抽象数据类型概念的C++语言作为算法描述语言,从线性结构到非线性结构,从简单到复杂,深入描述了各种数据结构内在的逻辑关系及其在计算机中的实现方式和具体的应用。全书的内容包括线性表、栈、队列、数组、串、广义表、树、图、查找以及各种排序方法。此外,对常用的迭代、递归、回溯以及贪心等算法设计技巧,搜索和排序算法做了详尽的描述,并引入了一些比较的数据结构和简单的算法分析。
      《数据结构(用C++语言描述)》可作为高等院校计算机专业、软件专业的本科生教材,同时也可作为准备参加研究生入学考试、自学考试和各类程序设计竞赛人员的参考书。
  • 目录:
    第1章 绪论
    1.1 数据结构的概念
    1.1.1 为什么要学习数据结构
    1.1.2 数据结构主要研究的内容
    1.2 抽象数据类型的表示和实现
    1.2.1 数据类型
    1.2.2 抽象数据类型
    1.2.3 抽象数据类型表示
    1.2.4 抽象数据类型实现
    1.3 算法和算法分析
    1.3.1 算法定义
    1.3.2 算法描述
    1.3.3 算法性能分析与度量
    1.3.4 常见的算法类型
    本章总结
    练习
    实验

    第2章 线性表
    2.1 线性表的逻辑结构
    2.1.1 线性表的定义
    2.1.2 线性表的抽象数据类型定义
    2.2 线性表的顺序表示和实现
    2.2.1 线性表的顺序表示
    2.2.2 顺序表表示
    2.2.3 顺序表基本操作的实现
    2.2.4 顺序表应用举例
    2.3 线性表的链式表示和实现
    2.3.1 单向链表的概念
    2.3.2 链表的类定义
    2.3.3 链表基本操作的实现
    2.3.4 双向链表
    2.3.5 链表应用实例
    2.4 链表和顺序表的选取
    本章总结
    练习
    实验

    第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 队列
    3.3.1 队列的定义及基本操作
    3.3.2 队列的抽象数据类型
    3.3.3 队列的存储及操作实现
    3.3.4 双端队列
    3.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 广义表的存储结构
    本章总结
    练习
    实验

    第5章 串
    5.1 串的基本概念及抽象数据类型
    5.1.1 串的基本概念
    5.1.2 串的抽象数据类型
    5.1.3 C++有关串的库函数
    5.1.4 串的存储结构
    5.2 串的顺序存储结构及基本操作实现
    5.2.1 串的顺序存储结构
    5.2.2 串的基本操作及实现
    5.2.3 串的模式匹配
    5.3 串的链式存储
    本章总结
    练习
    实验

    第6章 树和二叉树
    6.1 树的定义及表示
    6.1.1 树的定义
    6.1.2 树的表示
    6.2 二叉树
    6.2.1 二叉树的定义
    6.2.2 二叉树的抽象数据类型
    6.2.3 二叉树的存储结构
    6.2.4 二叉树结点类操作实现
    6.2.5 二叉树类操作实现
    6.3 二叉树遍历及其应用
    6.3.1 二叉树遍历的递归算法
    6.3.2 二叉树遍历的应用
    6.3.3 二叉树遍历的非递归算法
    6.4 线索二叉树
    6.4.1 线索二叉树定义
    6.4.2 线索二叉树存储结构
    6.4.3 线索二叉树基本操作
    6.5 树和森林
    6.5.1 树的存储表示
    6.5.2 树和森林的遍历
    6.6 Huffman树及其应用
    6.6.1 最优二叉树概念
    6.6.2 最优二叉树的构造
    6.6.3 Huffman树的应用:Huffman编码
    本章总结
    练习
    实验

    第7章 图
    7.1 图的基本概念
    7.1.1 图的定义和术语
    7.1.2 图的抽象数据类型
    7.2 图的存储结构
    7.2.1 图的邻接矩阵表示
    7.2.2 图的邻接表表示
    7.2.3 图的十字链表表示
    7.2.4 图的邻接多重表表示
    7.3 图的遍历
    7.3.1 深度优先搜索
    7.3.2 广度优先搜索
    7.4 最小生成树
    7.4.1 Prim算法
    7.4.2 Kruskal算法
    7.5 最短路径
    7.5.1 路径的概念
    7.5.2 从一个顶点到其余各顶点的最短路径
    7.5.3 每对顶点之间的最短路径
    7.6 DAG及其应用
    7.6.1 AOV网络与拓扑排序
    7.6.2 AOE网络与关键路径
    本章总结
    练习
    实验

    第8章 查找
    8.1 查找的基本概念
    8.2 静态查找表
    8.2.1 顺序查找
    8.2.2 二分查找
    8.2.3 分块查找
    8.3 树表的查找
    8.3.1 二叉排序树
    8.3.2 平衡二叉树
    8.3.3 红黑树
    8.3.4 B树
    8.3.5 B+树
    8.4 散列表查找
    8.4.1 散列表的基本概念
    8.4.2 哈希函数的构造方法
    8.4.3 处理冲突方法
    本章总结
    练习
    实验

    第9章 内部排序
    9.1 排序的概念及算法性能分析
    9.1.1 排序的概念
    9.1.2 排序算法的性能分析
    9.1.3 排序表类定义
    9.2 插入排序
    9.2.1 直接插入排序
    9.2.2 希尔排序
    9.3 交换排序
    9.3.1 冒泡排序
    9.3.2 快速排序
    9.4 选择排序
    9.4.1 直接选择排序
    9.4.2 堆排序
    9.5 归并排序
    9.5.1 归并
    9.5.2 归并排序算法
    9.6 基数排序
    9.6.1 基数排序思想
    9.6.2 LSD基数排序
    9.7 各种内部排序方法比较
    本章总结
    练习
    实验

    附录 实验总结
    参考文献
查看详情
相关图书 / 更多
数据结构(用C++语言描述)
数据中心经营之道 唐汝林 等
唐汝林 等
数据结构(用C++语言描述)
数据管理十讲 袁野 崔斌 李战怀 等
袁野 崔斌 李战怀 等
数据结构(用C++语言描述)
数据要素教程
杨东 白银 著
数据结构(用C++语言描述)
数据驱动式教学:如何科学、有效、系统地提高学生成绩(深度剖析教学数据,助力教学决策,实时洞察学习动态,精准教学)
(美)罗伯特·J. 马扎诺,菲利普·B. 沃里克,卡梅伦·L. 雷恩斯 ,理查德·杜富尔著,张庆彬译; 中青文 出品
数据结构(用C++语言描述)
数据确权的理论基础探索
彭诚信、史晓宇 著
数据结构(用C++语言描述)
数据经济学
赵昌文,戎珂
数据结构(用C++语言描述)
数据库原理与实践(MySQL版)()
杨俊杰,刘忠艳主编
数据结构(用C++语言描述)
数据挖掘竞赛实战:方法与案例
许可乐
数据结构(用C++语言描述)
数据要素估值
刘赛红、吕颖毅、王连军
数据结构(用C++语言描述)
数据驱动的物流选址与调度模型及其实践
木仁 徐志强
数据结构(用C++语言描述)
数据与人工智能驱动型公司:用数据和人工智能升级企业
(西) 理查德·本杰明(Richard Benjamins)
数据结构(用C++语言描述)
数据库管理系统原理与实现
杜小勇、陈红、卢卫
您可能感兴趣 / 更多
数据结构(用C++语言描述)
C++程序设计基础案例教程/高等学校计算机专业面向项目实践规划教材
吴艳、费如纯、高艳 编
数据结构(用C++语言描述)
计算机专业外语
吴艳、刘红妮、高君 编
数据结构(用C++语言描述)
高等学校经济学系列教材:国际贸易实务
吴艳、袁定喜 著
数据结构(用C++语言描述)
中老年激情广场
吴艳、于爱群 编