书籍详情

数据结构第二版(C语言)

数据结构第二版(C语言)

作者:杨勇虎 等 主编

出版社:东软电子出版社

出版时间:2012-07-25

ISBN:9787894360441

定价:¥68.00

购买这本书可以去
内容简介
  本教材的编写主要有如下特点:(1)本书的每个算法实现都是完整的、全部可以运行通过的C语言程序,便于学生进行大量实践。(2)每章前均有课前导学一节,便于学生初步了解每章内容,清楚该如何学习。(3)每章后均有总结,从整体上回顾课程的知识点,提出重点难点,便于学生更好地学习。(4)本书穿插了一些板块内容,譬如:帮助理解、脚下留心、深度探险等,便于学生更好地理解具体内容。(5)本书每章均配有具体的应用实例,便于学生提高学习的兴趣,明白具体的应用。(6)本书的编写基本是以提出问题――分析问题――解决问题的思路进行的。语言通俗易懂、思路清晰、层次鲜明。便于学生逐步培养和提高分析问题和解决问题的能力。(7)结合大连东软信息学院使用TOPCARES-CDIO理念对于教学的改造,本课程重点培养学生的9个能力(详见“教材设计与教学建议”内容),各章相关具体能力要求、教学要求、教学重点以及教学难点等在每一章前面列出,希望读者在学习时加以注意。(8)每章的实验以TOPCARES-CDIO工程教育理念为指导思想,每一小节对应一个单元项目或单元组项目,在每个项目中,或编写函数来实现一个算法,或编写类型(以及与类型相关的函数)来实现一种数据结构。
作者简介
暂缺《数据结构第二版(C语言)》作者简介
目录
第1章 绪论
1.1为什么要学习数据结构
1.2什么是数据结构
1.2.1数据的逻辑结构
1.2.2数据的存储结构
1.3算法
1.4C语言基础
1.4.1基本数据类型
1.4.2构造数据类型
1.4.3指针类型
1.4.4函数
1.4.5程序结构化和设计风格
本章小结
1.5C语言项目实践
1.5.1求PI值
1.5.2求斐波那契数列第n项的值
1.5.3求两个非负整数的最大公约数
1.5.4筛选法求素数
1.5.5字符串加密与解密
1.5.6模拟投掷两个骰子
1.5.7正态分布的随机小数
1.6习题
1.6.1知识点:数据结构的定义
1.6.2知识点:算法的概念第2章 线性表
2.1项目导学
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线性表项目实践
2.6.1动态存储的顺序表
2.6.2双向链表
2.6.3有序双向链表
2.6.4一元多次多项式运算
2.7习题
2.7.1知识点:线性表的逻辑结构
2.7.2知识点:线性表的顺序存储结构
2.7.3知识点:线性表的链式存储结构第3章 栈和队列
3.1项目导学
3.2栈
3.2.1栈的逻辑结构及基本运算
3.2.2栈的存储实现和运算实现
3.3栈的应用举例
3.3.1数制转换问题
3.3.2表达式求值
3.3.3栈与递归
3.4队列
3.4.1队列的定义及基本运算
3.4.2队列的存储实现及运算实现
3.5队列应用举例
本章小结
3.6栈和队列项目实践
3.6.1基于动态顺序表的栈的实现
3.6.2基于动态顺序表的循环队列的实现
3.6.3进制转换
3.6.4简单表达式求值
3.6.5n皇后问题
3.7习题
3.7.1知识点:栈的基本概念
3.7.2知识点:栈的存储
3.7.3知识点:队列的基本概念及其应用
3.7.4知识点:队列的存储第4章 树和二叉树
4.1项目导学
4.2树
4.2.1树的定义
4.2.2树的基本术语
4.3二叉树
4.3.1二叉树的定义
4.3.2二叉树的性质
4.3.3二叉树的基本操作
4.3.4二叉树的应用
4.4二叉树和树的存储结构
4.4.1二叉树的存储结构
4.4.2树的存储结构
4.5树、森林向二叉树的转换
4.5.1树向二叉树的转换
4.5.2森林向二叉树的转换
4.6树与二叉树的遍历
4.6.1二叉树的遍历
4.6.2应用实例
4.6.3树的遍历
4.6.4线索二叉树
4.7哈夫曼树(Huffman)
4.7.1哈夫曼树的基本概念
4.7.2构造哈夫曼树
4.7.3哈夫曼编码
本章小结
4.8二叉树项目实践
4.8.1二叉树的链式存储及常见操作
4.8.2二叉树的顺序存储及常见操作
4.8.3Huffman编码
4.9习题
4.9.1知识点:树和二叉树的基本概念
4.9.2知识点:二叉树和树的存储结构
4.9.3知识点:树、森林向二叉树的转换
4.9.4知识点:树与二叉树的遍历图
4.9.5知识点:哈夫曼树第5章 图
5.1项目导学
5.2图的基本概念
5.2.1图的定义和术语
5.2.2图的基本操作
5.3图的存储
5.3.1图的数组存储
5.3.2图的邻接表存储
5.3.3有向图的十字链表存储
5.3.4无向图的邻接多重链表存储
5.4图的遍历
5.4.1深度优先搜索遍历
5.4.2广度优先搜索遍历
5.4.3图的连通性
5.4.4生成树和生成森林
5.5最小生成树
5.5.1基本概念
5.5.2克鲁斯卡尔(Kruskal)算法
5.5.3普里姆(Prim)算法
5.6图的应用
5.6.1最短路径
5.6.2AOV网与拓扑排序
5.6.3AOE图与关键路径
本章小结
5.7图的项目实践
5.7.1图的邻接矩阵存储与遍历
5.7.2最短路径
5.7.3图的邻接链表存储与遍历
5.7.4拓扑排序
5.8习题
5.8.1知识点:图的基本概念
5.8.2知识点:图的存储
5.8.3知识点:图的遍历
5.8.4知识点:最小生成树
5.8.5知识点:图的应用第6章 排序
6.1项目导学
6.2基本概念
6.3插入排序
6.3.1直接插入排序
6.3.2希尔排序
6.4交换排序
6.4.1冒泡排序
6.4.2快速排序
6.5选择排序
6.5.1直接选择排序
6.5.2堆排序
6.6归并排序
6.7基数排序
6.8各种内部排序方法的比较和选择
本章小结
6.9排序项目实践
6.10习题
6.10.1知识点:直接插入排序
6.10.2知识点:希尔排序
6.10.3知识点:冒泡排序
6.10.4知识点:快速排序
6.10.5知识点:直接选择排序
6.10.6知识点:堆排序
6.10.7知识点:归并排序
6.10.8知识点:基数排序
6.10.9综合习题第7章 查找
7.1项目导学
7.2相关概念
7.3查找算法的度量
7.4静态查找表
7.4.1顺序查找
7.4.2折半查找
7.4.3分块查找
7.5动态查找表
7.5.1二叉排序树
7.5.2平衡二叉树
7.5.3B-树和B+树
7.6哈希表查找
7.6.1哈希表与哈希查找
7.6.2哈希函数的构造方法
7.6.3处理冲突的方法
7.6.4哈希表的查找分析
本章小结
7.7查找项目实践
7.8习题
7.8.1知识点:顺序查找
7.8.2知识点:折半查找
7.8.3知识点:二叉排序树
7.8.4知识点:平衡二叉树
7.8.5知识点:B-树和B+树
7.8.6知识点:哈希查找
7.8.7综合习题第8章 数组和广义表
8.1项目导学
8.2数组的顺序存储结构
8.3特殊数组的压缩存储
8.3.1稀疏数组
8.3.2特殊矩阵
8.4广义表的定义和操作
8.5广义表的存储结构
8.6广义表的应用实例
本章小结
8.7数组和广义表项目实践
8.7.1稀疏矩阵的压缩存储
8.7.2矩阵转置与矩阵相乘
8.7.3广义表结构的实现
8.7.4广义表结构的应用
8.8习题
8.8.1知识点:数组的定义和顺序存储
8.8.2知识点:特殊数组的压缩存储
8.8.3知识点:广义表的基本概念第9章 串
9.1项目导学
9.2串的定义
9.3串的存储结构
9.3.1串的顺序存储
9.3.2串的链式存储
9.4串的基本操作
9.4.1求串长度
9.4.2串拷贝
9.4.3串连接
9.4.4串比较
9.4.5求子串
9.4.6串的模式匹配
本章小结
9.5字符串项目实践
9.5.1模仿C语言库函数strncpy
9.5.2模仿C语言库函数strncat
9.5.3模仿C语言库函数strncmp
9.5.4求字符串的子串
9.5.5串的模式匹配
9.5.6基于动态内存的字符串结构
9.6习题
9.6.1知识点:串的基本概念
9.6.2知识点:串的操作和顺序存储
9.6.3知识点:串的模式匹配第10章 综合测试
10.1综合测试题1
10.2综合测试题2
参考文献
猜您喜欢

读书导航