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

国家级精品课程配套教材
分享 推荐 1 收藏 19 阅读 4.2K
张同珍 (作者) 978-7-115-56985-1

关于本书的内容有任何问题,请联系 许金霞

1.在内容组织上采用标准化,让学生在学习中有章可循。统一采用逻辑结构、基本操作、物理结构、基本操作实现和典型应用的标准轨迹进行各个模块的讨论,师生用此方法容易给整本书建立出清晰的结构脉络。
2.在内容组织上还采用模块化,将线性、非线性由浅入深划分出各个模块。无论在理论上还是实际设计、动手实现的培养上都采用承上启下,逐步深入的过程。
3.在简单结构讨论中注重对分析脉络的熟悉、基于顺序结构和链式结构基本功的讲解和训练,在算法设计和实现中提出一些操作性很强的法则,为后续复杂结构打下必要的基础。
4.针对每个模块,几乎所有典型基本操作算法都分析其思维历程,用图示详细演示算法的思想,最后给出完整的C++语言实现。通过快速运行程序可以使得学生获得感性、直观的认识,反过来又促进学生对理论内容的进一步理解,也有利于学生动手能力的培养。
5.各模块典型应用既有涉及理工类的问题求解,也有日常生活工作中的一些实际例子,有利于学生将所学结合到各类实际应用中。

内容摘要

本书在结构顺序编排上,根据数据之间关系的不同,由简入繁,分为集合、线性、树、图结构4个部分。在内容的编排上,涵盖了计算机专业数据结构课程的教学大纲要求,兼顾了相关专业硕士研究生入学考试内容范围,主要内容包括绪论、线性表、栈和队列、树、图、查找和排序。
本书内容丰富,条理清晰,深入浅出,表现形式多样,讲解详尽,适合作为高等院校计算机类、电类、信息类、自控类专业“数据结构”相关课程的教材,也可作为全国高校研究生入学考试参考书。

诚邀您加入【人邮社数据结构教师交流群】

目录

目录

第 1章 绪论
1.1 数据结构定义
1.1.1 数据的逻辑结构
1.1.2 数据的存储结构
1.1.3 基本操作的实现
1.1.4 典型应用
1.2 算法及算法分析
 1.2.1算法及其要求
 1.2.2时间复杂性的度量
 1.2.3空间复杂性的度量
1.3 数据结构的C++语言实现
 1.3.1面向对象
 1.3.2泛型机制
 1.3.3 const机制
 1.3.4 异常处理
1.4 小结
1.5 习题

第 2章 线性表
2.1 线性表的定义及ADT
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.4.1一元多项式的加法
2.4.2字符串的存储和实现
2.4.3 稀疏矩阵
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.3队列
3.3.1队列的定义及ADT
3.3.2 队列的顺序存储及实现
3.3.3 队列的链式存储及实现
3.3.4 优先队列
3.4 队列的应用
 3.5 小结
 3.6 习题

第4章 树及二叉树
4.1 树的定义、术语及结构
4.2 二叉树
4.2.1 二叉树的定义
4.2.2 二叉树的性质
4.2.3 二叉树的存储和实现
 4.3 二叉树的遍历
4.3.1 二叉树的遍历及实现
4.3.2 二叉线索树
4.3.3 遍历序列确定二叉树
 4.4 表达式树
4.4.1 基本概念
4.4.2 表达式树的建立
4.4.3 表达式的计算
 4.5 最优二叉树及其应用
4.5.1.基本概念
4.5.2 哈夫曼算法的实现
4.5.3 哈夫曼编码
4.6 等价类问题
4.6.1.等价关系及等价类
4.6.2 不相交集及其存储
4.6.3 不相交集的基本操作
 4.7 树和森林
4.7.1孩子兄弟表示法
 4.7.2树、森林与二叉树的转换
 4.7.3树和森林的遍历
 4.8 小结
 4.9 习题

第5章 图
 5.1 图的基本概念
 5.1.1 图的概念及术语
 5.1.2 图的抽象数据类型
 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普里姆(Prim)算法
5.4.2克鲁斯卡尔( Kruscal)算法
 5.5最短路径问题
 5.5.1单源最短路径
5.5.2 所有顶点对之间的最短路径
 5.6 AOV网和AOE网
 5.6.1拓扑排序
 5.6.2 关键路径
 5.7 小结
 5.8 习题

第6章 查找
6.1 静态查找技术
6.1.1 顺序查找
6.1.2 折半查找
6.1.3 插值查找
6.1.4 分块查找
 6.2 二叉查找树
 6.2.1二叉查找树的定义
 6.2.2基本操作实现
 6.2.3顺序统计
 6.3平衡二叉查找树(AVL树)
 6.3.1插入操作
 6.3.2删除操作
 6.3.3最大高度
 6.4红黑树
 6.4.1 插入操作
 6.4.2 删除操作
 6.5 B树和B+树
 6.5.1 B树
 6.5.2 B树的查找分析
 6.5.3 B树的插入
 6.5.4 B树的删除
 6.5.5 B+树
 6.6哈希(Hash)方法
 6.6.1常用的哈希函数
 6.6.2线性探测法
 6.6.3二次探测法
 6.6.4链地址法
 6.7 小结
 6.8 习题

第7章 排序
 7.1引言
 7.2冒泡排序
 7.3插入排序
 7.3.1简单插入排序
 7.3.2折半插入排序
 7.3.3希尔排序
 7.4 归并排序
 7.5快速排序
 7.6选择排序和堆排序
 7.6.1选择排序
 7.6.2堆排序
 7.6.3堆和优先队列
 7.7基数排序
 7.7.1多关键字排序
 7.7.2基数排序法
 7.8 内部排序算法的比较
 7.9 外排序
7.9.1 外排序处理过程
7.9.2 K路归并
 7.9.3 初始归并段
 7.9.4 最佳归并树
 7.10 小结
7.11 习题

读者评论

赶紧抢沙发哦!

我要评论

作者介绍

上海交通大学副教授,曾获上海市优秀教材奖、上海市教学成果奖、上海交通大学烛光奖。主要讲授“数据结构”“程序设计”“计算引论”等课程,其中,“数据结构”课程被评国家级精品课程、“程序设计”课程被评上海市精品课程。

推荐用户

购买本书用户

相关图书

  • 数据库原理(微课版)

    郭玉彬 宋歌 边山

    本书依据教育部《普通高等学校本科专业类教学质量国家标准》,以新工科背景下加快培养计算机类工程人才为目标,构建了...

    ¥69.80
  • 数据结构(C语言版)(第3版)

    李冬梅 严蔚敏

    本书在选材与编排上,贴近当前普通高等院校“数据结构”课程的现状和发展趋势,符合最新研究生考试大纲,内容难度适度...

    ¥59.80
  • 大学计算机导论

    甘勇

    “计算机科学导论”作为计算机科学与技术专业的必修课,旨在引导刚刚进入大学的新生对计算机基础知识及研究方向有一个...

    ¥59.80
  • 数据库原理及应用教程(第5版) (微课版)

    陈志泊

    全书共7章,主要内容包括:数据库系统概述、关系模型及其操作、关系数据库标准语言 ——SQL、关系数据库理论、数...

    ¥69.80
  • 操作系统原理与实现

    吴帆

    操作系统是计算机系统的核心,是其他一切软件运行的基础。本书主要介绍操作系统的基本原理和实现方法。全书共12章,...

    ¥79.80
人邮微信
本地服务
人邮微信
教师服务
二维码
读者服务
读者服务
返回顶部
返回顶部