新書推薦:
《
“御容”与真相:近代中国视觉文化转型(1840-1920)
》
售價:HK$
113.9
《
海洋、岛屿和革命:当南方遭遇帝国(文明的另一种声音)
》
售價:HK$
109.3
《
铝合金先进成型技术
》
售價:HK$
273.7
《
英雄之旅:把人生活成一个好故事
》
售價:HK$
89.7
《
分析性一体的涌现:进入精神分析的核心
》
售價:HK$
125.4
《
火枪与账簿:早期经济全球化时代的中国与东亚世界
》
售價:HK$
79.4
《
《全面与进步跨太平洋伙伴关系协定》国有企业条款研究
》
售價:HK$
101.2
《
银行业架构网络BIAN(全球数字化时代金融服务业框架)(数字化转型与创新管理丛书)
》
售價:HK$
101.2
|
編輯推薦: |
《数据结构(C语言版)》的第1章综述数据、数据结构和抽象数据类型等基本概念;第2章至第7章从抽象数据类型的角度,分别讨论线性表、栈、队列、串、数组、广义表、树和二叉树以及图等基本类型的数据结构及其应用;第8章和第9章讨论查找和内部排序,除介绍各种实现方法之外,还着重从时间上进行定性或定量分析和比较。本书内容和章节编排参考清华大学严蔚敏版《数据结构(C语言版)》,沿用其中抽象数据类型的概念,对每一种数据结构都给出相应的数据结构类型的形式化定义。在此基础之上,作者陈燕、曹妍、贾红雨、李晔结合数十年数据结构课程的教学经验,综合考虑学时、专业和学生的实际情况,进一步细化数据结构算法的讲解,同时也删去一部分内容。 本书可作为计算机类、信息管理类、电子商务、综合管理类、信息科学类专业的本科或专科教材,或其他相关专业的选修教材。本书文字通俗易懂,便于自学,也可供从事计算机应用等工作的科技人员参考。只需掌握程序设计基本技术便可学习本书。
|
內容簡介: |
陈燕、曹妍、贾红雨、李晔编著的《数据结构( 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 各种内部排序方法的比较
参考文献
|
|