下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922
读书 > 编程语言 >C/C++ > 数据结构(C语言版)

数据结构(C语言版)

综合评级:★★★★★

定价:68.00

作者:陈燕,曹妍,贾红雨,李晔

出版社:科学出版社有限责任公司

出版日期:2016年3月

页数:370

字数:563000

ISBN:9787030400932

书籍介绍
陈燕、曹妍、贾红雨、李晔编著的《数据结构( C语言版)》是为数据结构课程编写的教材,采用逐步 演算和编程运行相结 合的方式,前半部分从抽象数据类型的角度,分别讨 论典型数据结构的 逻辑特性、存储表示和相关算法,后半部分主要讨论 查找和排序的各种 算法及其综合分析比较。书中对大多数算法进行时间 复杂度的分析,采 用C语言作为数据结构对应算法的编程语言。

  《数据结构(C语言版)》文字通俗易懂,可作 为计算机类、信息管理类、电子商务、综 合管理类、信息科学类专业的本科或专科教材,或其 他相关专业的选修 教材,也可作为从事计算机应用等工作的科技人员的 参考书。

相关课程
目录
前言
第1章  绪论
  1.1  数据结构的研究与发展
    1.1.1  国外的研究与发展
    1.1.2  国内的研究与发展
    1.1.3  数据结构在计算机专业中的地位
  1.2  什么是数据结构
  1.3  数据结构的基础知识
  1.4  数据类型与抽象数据类型
  1.5  算法和算法的量度
    1.5.1  算法简述
    1.5.2  算法的特征
    1.5.3  算法对应的程序设计模式
    1.5.4  时间复杂度
    1.5.5  空间复杂度
  1.6  数据结构的选择与评价
第2章  线性表
  2.1  线性表的基本概念
    2.1.1  线性表的定义
    2.1.2  线性表的抽象数据类型定义
    2.1.3  线性表的存储结构
    2.1.4  线性表的抽象数据类型定义的应用
  2.2  线性表的顺序存储结构
    2.2.1  线性表的顺序存储结构定义
    2.2.2  线性表的顺序存储结构的基本操作
  2.3  线性表的链式存储结构
    2.3.1  线性表的链式存储结构定义
    2.3.2  线性表的链式存储结构的基本操作
    2.3.3  循环链表与双向链式存储结构及操作
  2.4  顺序表与链表的比较
  2.5  线性表的应用例子
    2.5.1  一元多项式的线性表的顺序存储结构及运算
    2.5.2  一元多项式的线性表的链式存储结构
第3章  栈和队列
  3.1  栈的基本概念
    3.1.1  栈的定义
    3.1.2  栈的抽象数据类型定义
    3.1.3  栈的表示和实现
  3.2  栈的应用
    3.2.1  数制转换
    3.2.2  括号匹配
    3.2.3  运用栈实现行编辑程序
    3.2.4  迷宫求解
    3.2.5  表达式求值
  3.3  栈与递归
    3.3.1  递归的概念
    3.3.2  递归过程的内部实现
    3.3.3  递归消除
    3.3.4  阅读一个递归程序
  3.4  队列的基本概念
    3.4.1  队列的定义
    3.4.2  队列的抽象数据类型定义
    3.4.3  队列的表示和实现
  3.5  队列的应用——离散事件模拟的例子
第4章  串
  4.1  串的基本概念
    4.1.1  串的定义
    4.1.2  串的抽象数据类型定义
    4.1.3  C语言函数库中的串处理函数
  4.2  串的存储结构及算法
    4.2.1  串的静态存储结构及算法
    4.2.2  串的动态存储结构及算法
  4.3  串的模式匹配算法
    4.3.1  模式匹配的朴素算法
    4.3.2  模式匹配的首尾匹配算法
    4.3.3  KMP算法
  4.4  文本编辑的应用
    4.4.1  文本编辑举例
    4.4.2  高级语言程序设计的编译方法
第5章  数组和广义表
  5.1  数组的基本概念
    5.1.1  数组的定义
    5.1.2  数组的抽象数据类型定义
    5.1.3  数组的表示和实现
  5.2  数组的应用——矩阵的压缩存储
    5.2.1  特殊矩阵
    5.2.2  稀疏矩阵
  5.3  广义表的基本概念
    5.3.1  广义表的定义
    5.3.2  广义表的抽象数据类型定义
    5.3.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.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.5.3  树和森林的遍历
  6.6  哈夫曼树及其应用
    6.6.1  最优二又树(哈夫曼树)
    6.6.2  哈夫曼编码
    6.6.3  哈夫曼树与判定树
第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  Prim算法
    7.3.2  Kruskal算法
    7.3.3  生成树与图的遍历
  7.4  两点之间的最短路径
    7.4.1  从某个源点到其余各顶点的最短路径
    7.4.2  每一对顶点之间的最短路径
  7.5  拓扑排序
    7.5.1  拓扑排序的定义
    7.5.2  关键路径
第8章  查找
  8.1  查找的基本概念
  8.2  静态查找表
    8.2.1  无序顺序表查找——顺序查找
    8.2.2  有序顺序表的查找——折半查找
    8.2.3  索引顺序表查找——分块查找
  8.3  动态查找表
    8.3.1  二叉排序树
    8.3.2  平衡二叉树
  8.4  哈希表
    8.4.1  什么是哈希表
    8.4.2  哈希函数的构造方法
    8.4.3  处理冲突的方法
    8.4.4  哈希表的查找
    8.4.5  哈希表实现的比较
第9章  内部排序
  9.1  排序的基本概念
  9.2  插入排序
    9.2.1  直接插入排序
    9.2.2  折半插入排序
    9.2.3  表插入排序
    9.2.4  希尔排序
  9.3  交换排序
    9.3.1  起泡排序
    9.3.2  快速排序
  9.4  选择排序
    9.4.1  简单选择排序
    9.4.2  堆排序
  9.5  归并排序
  9.6  分配排序
    9.6.1  多关键字排序
    9.6.2  基数排序
  9.7  各种内部排序方法的比较
参考文献
热门图书
推荐新闻
技术文库
论坛推荐