注册 登录 进入教材巡展
#

出版时间:2015年2月

出版社:北京师范大学出版集团

以下为《数据结构》的配套数字资源,这些资源在您购买图书后将免费附送给您:
  • 北京师范大学出版集团
  • 9787566408747
  • 188334
  • 2015年2月
  • 未分类
  • 未分类
  • TP311.12
内容简介

  胡学钢、张先宜主编的《数据结构(安徽省高等学校计算机教育研究会推荐用书)》内容包含软件设计中广泛使用的几种基础数据结构,以及软件设计中常用的排序和查找算法。对每种结构,先介绍其逻辑结构和算法设计,再讨论其存储实现和算法实现。全书内容组织如下:


  第1章概论,介绍数据结构课程的研究内容、基本知识和基本概念,对整个课程学习起到引导作用。


  第2章线性表,介绍线性表的逻辑结构和运算,重点讨论顺序表和链表的存储实现,以及相应的基本运算实现,并结合实例分析和讲解应用方法。


  第3章栈和队列,介绍这两种结构的逻辑结构和运算,重点讨论顺序栈、链栈、顺序(循环)队列和链队列的存储及基本运算实现。


  第4章串、数组和广义表,介绍这3种结构的逻辑结构和运算,以及存储结构和程序的部分运算实现。


  第5章树,介绍树和森林的逻辑结构、存储结构和运算;二叉树的概念、性质、存储结构,重点讨论二叉树的遍历算法及其应用;讨论了线索二叉树的概念、算法及应用;哈夫曼树的相关知识及其应用。


  第6章图,介绍图的概念、运算和应用;讨论图的两种常用存储结构,重点讨论了图的两种遍历算法的实现及其应用;最后以通俗的方式介绍了最小生成树、拓扑排序和最短路径等几个图的典型问题及算法。


  第7章查找,介绍查找的基本概念,重点讨论了顺序表、树表和散列表等几种结构上的查找算法及其性能。


  第8章排序,介绍排序的基本概念,重点讨论几种常用排序方法的算法实现及性能。


  本书采用类C语言作为数据结构的描述语言,兼顾C语言的特点和描述代码的易读性。为方便读者体验数据结构的实现,很多算法在给出类C语言描述的同时,给出了C语言的上机实现代码,读者也能很容易将书中的描述代码转换为C或C++的实现代码。

目录

第1章 概论


 1.1 “数据结构”的研究内容


  1.1.1 计算机解决实际问题的过程


  1.1.2 学习“数据结构”的意义


  1.1.3 学习“数据结构”的四种境界


 1.2 基本术语


 1.3 算法描述及分析


  1.3.1 算法描述语言概述


  1.3.2 算法分析


 小结


 习题1


第2章 线性表


 2.1 线性表的定义和运算


  2.1.1 线性表的定义


  2.1.2 线性表的运算


 2.2 线性表的顺序存储结构


  2.2.1 顺序存储结构


  2.2.2 顺序表运算的实现


  2.2.3 顺序表的应用


 2.3 链表


  2.3.1 链表基本结构


  2.3.2 链表基本运算的实现


  2.3.3 链表结构的应用


 2.4 其他结构形式的链表


  2.4.1 单循环链表


  2.4.2 带尾指针的单循环链表


  2.4.3 双链表结构


 小结


 习题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.3 栈与递归


  3.3.1 递归的基本概念


  3.3.2 递归调用的内部实现原理


  3.3.3 递归程序的阅读和理解


  3.3.4 递归程序编写


  3.3.5 递归程序转换和模拟


 小结


 习题3


第4章 串、数组和广义表


 4.1 串


  4.1.1 串的定义和运算


  4.1.2 串的存储


 4.2 数组


  4.2.1 数组的定义和运算


  4.2.2 数组的顺序存储


  4.2.3 矩阵的压缩存储


 4.3 广义表


  4.3.1 广义表的基本概念


  4.3.2 广义表的基本运算


  4.3.3 广义表的存储


 小结


 习题4


第5章 树


 5.1 树的概念和基本运算


  5.1.1 树的定义


  5.1.2 树的基本概念和术语


  5.1.3 树的基本操作


 5.2 二叉树


  5.2.1 二叉树的基本概念


  5.2.2 二叉树的性质


  5.2.3 二叉树的存储结构


 5.3 二叉树的遍历


  5.3.1 遍历算法的实现


  5.3.2 二叉树的创建与销毁


  5.3.3 二叉树遍历算法的应用


 5.4 线索二叉树


  5.4.1 线索二叉树结构


  5.4.2 线索二叉树中前驱后继的求解


 5.5 树和森林


  5.5.1 树的存储结构


  5.5.2 树(森林)与二叉树的转换


  5.5.3 树(森林)的遍历


 5.6 哈夫曼树


  5.6.1 问题描述及求解方法


  5.6.2 应用实例


 小结


 习题5


第6章 图


 6.1 图的定义和基本概念


  6.1.1 图的定义


  6.1.2 图的基本概念


  6.1.3 图的顶点编号


 6.2 图的存储结构


  6.2.1 邻接矩阵表示


  6.2.2 邻接表表示


  6.2.3 图的创建和销毁


 6.3 图的遍历算法及其应用


  6.3.1 深度优先搜索遍历算法及其应用


  6.3.2 广度优先搜索遍历算法及其应用


 6.4 最小生成树


  6.4.1 Prim算法


  6.4.2 Kruskal算法


 6.5 最短路径


  6.5.1 从一个顶点到其余各个顶点的最短路径——Dijkstra算法


  6.5.2 每一对顶点之间的最短路径——Floyd算法


 6.6 有向无环图


  6.6.1 拓扑排序


  6.6.2 关键路径


 小结


 习题6


第7章 查 找


 7.1 概 述


 7.2 顺序表的查找


  7.2.1 简单顺序查找


  7.2.2 有序表的二分查找


  7.2.3 索引顺序表的查找


 7.3 树表的查找


  7.3.1 二叉排序树


  7.3.2 平衡二叉树


 7.4 散列表的查找


  7.4.1 散列表的基本概念


  7.4.2 散列函数的构造方法


  7.4.3 处理冲突的方法


  7.4.4 散列表的查找


 小结


 习题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.4 选择排序


  8.4.1 直接选择排序


  8.4.2 堆排序


 8.5 归并排序


  8.5.1 归并


  8.5.2 归并排序


 小结


 习题8