网站首页  软件下载  游戏下载  翻译软件  电子书下载  电影下载  电视剧下载  教程攻略

请输入您要查询的图书:

 

书名 数据结构(普通高等教育信息技术类系列教材)
分类
作者
出版社 科学出版社
下载
简介
内容推荐
本书是针对应用型本科教学特征和需求而编写的,书中系统地介绍了常见数据结构和算法的相关理论和实现方法,主要包括线性表、栈、队列、串、数组和广义表、树和二叉树、图等逻辑结构及其对应的存储结构和操作。另外,本书还集中介绍了常见的排序和查找算法,并对算法的效率进行了分析。
本书以C语言为算法实现语言,以理论讲解为基石,以案例讲解为驱动,每个章节配备思考题和章后习题(包括理论习题和上机操作习题)。本书致力于将理论和实践相结合,由浅入深地实现理论和实践内容的逐级内化。
本书可作为应用型高等院校计算机科学与技术、软件工程、数据科学与大数据技术、信息安全等相关专业的本科生专业教材或参考用书,也可作为计算机相关从业技术人员的自学和参考用书。
目录
第1章 数据结构和算法
1.1 数据结构的基本概念
1.2 抽象数据类型的表示与实现
1.2.1 抽象、数据抽象和过程抽象
1.2.2 封装与信息隐蔽
1.2.3 数据类型和抽象数据类型
1.2.4 数据结构和抽象数据类型
1.3 算法
1.3.1 算法的概念
1.3.2 算法的基本特性
1.4 算法的设计与评价
1.4.1 评价算法的标准
1.4.2 常见的算法设计方法
小结\t
习题\t
第2章 线性表
2.1 线性表的基本概念
2.1.1 线性表的定义
2.1.2 线性表的逻辑结构
2.1.3 线性表的基本运算
2.2 线性表的顺序表示与实现
2.2.1 线性表的顺序存储结构
2.2.2 顺序表的实现
2.2.3 顺序表基本运算的实现
2.2.4 顺序表的算法分析
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.5.1 顺序表的应用
2.5.2 链表的应用
小结\t
习题\t
第3章 栈
3.1 基本概念
3.1.1 栈的概念
3.1.2 栈的基本运算
3.2 栈的顺序存储结构
3.2.1 顺序栈
3.2.2 顺序栈的基本操作
3.3 栈的链式存储结构
3.3.1 链栈的实现
3.3.2 链栈的基本操作
3.4 栈的应用
3.4.1 数制转换
3.4.2 括号匹配
3.4.3 “迷宫”游戏
小结\t
习题\t
第4章 队列
4.1 队列的基本概念和基本运算
4.1.1 队列的基本概念
4.1.2 队列的基本运算
4.2 队列的顺序存储结构
4.2.1 队列的顺序表示
4.2.2 顺序队列的基本运算
4.2.3 循环队列
4.2.4 循环队列的基本运算
4.3 队列的链式存储结构
4.3.1 链队列
4.3.2 链队列的实现
4.4 队列的应用
4.4.1 冲突分组
4.4.2 舞伴问题
小结\t
习题\t
第5章 串
5.1 串的定义和基本操作
5.1.1 串的定义
5.1.2 串的基本操作
5.2 串的存储结构
5.2.1 串的顺序存储结构
5.2.2 串的链式存储结构
5.3 串的抽象数据类型和模式匹配
5.3.1 串的抽象数据类型
5.3.2 串的模式匹配
小结\t
习题\t
第6章 数组和广义表
6.1 数组
6.1.1 数组的定义及其抽象数据类型
6.1.2 C语言的数组
6.2 数组的存储结构
6.2.1 一维数组
6.2.2 二维数组
6.2.3 多维数组
6.3 特殊矩阵及其压缩存储方法
6.4 广义表
6.4.1 广义表的定义
6.4.2 广义表的抽象数据类型表示
6.4.3 广义表的存储结构及运算实现
小结\t
习题\t
第7章 树和二叉树
7.1 树的定义和基本术语
7.1.1 树的定义
7.1.2 树的常用术语和运算
7.1.3 树的抽象数据类型
7.1.4 树的存储存在的挑战
7.2 二叉树
7.2.1 二叉树的定义
7.2.2 二叉树的性质
7.2.3 二叉树的抽象数据类型
7.2.4 二叉树的存储结构
7.2.5 二叉树的简单运算实现
7.3 遍历二叉树
7.3.1 遍历二叉树的递归算法
7.3.2 遍历二叉树的非递归算法
7.3.3 遍历序列与二叉树的恢复
7.3.4 基于遍历的二叉树运算的实现和应用
7.4 线索二叉树
7.4.1 线索二叉树的定义
7.4.2 线索二叉树的构造方法
7.4.3 线索二叉树上的运算实现
7.5 树、森林与二叉树的转换
7.5.1 树的存储结构
7.5.2 森林和二叉树的转换
7.5.3 树和森林的遍历
7.6 哈夫曼树及其应用
7.6.1 相关概念
7.6.2 哈夫曼树的构造过程
7.6.3 哈夫曼编码
小结\t
习题\t
第8章 图
8.1 图的基本概念
8.1.1 图的定义
8.1.2 图的相关术语
8.1.3 图的抽象数据类型
8.2 图的存储结构
8.2.1 邻接矩阵表示法
8.2.2 邻接表表示法
8.2.3 邻接多重表表示法
8.3 图的遍历
8.3.1 定义及难点问题
8.3.2 深度优先搜索遍历
8.3.3 广度优先搜索遍历
8.3.4 图的遍历应用
8.4 无向连通图的最小代价生成树
8.4.1 Kruskal算法
8.4.2 Prim算法
8.4.3 Sollin算法
8.5 有向图的最短路径
8.5.1 单源最短路径——Dijkstra算法
8.5.2 所有节点之间的最短路径——Floyd算法
8.6 AOV网络与拓扑排序
8.6.1 AOV网络的定义
8.6.2 拓扑序列和拓扑排序算法
8.7 AOE网络与关键路径
8.7.1 AOE网络的定义
8.7.2 关键路径和关键活动
8.7.3 关键路径算法
小结\t
习题\t
第9章 查找
9.1 顺序查找
9.1.1 顺序查找实例
9.1.2 顺序查找
序言
“数据结构”是计算机科学与技术学科中一门十分
重要的专业基础课程,也是其他工科的重要选修课之一
。2022年发布的《计算机类教学质量国家标准》中将“
数据结构”课程列为计算机科学与技术专业、软件工程
专业、网络工程专业、信息安全专业、物联网工程等5
个学科的基础课之一。另外,数据科学与大数据、人工
智能等专业都要求学生具备较好的算法和数据结构相关
基础知识。
编者结合本科的教学要求和省属学校学生的学习特
点,注重理论和实践相结合。本书中将知识内容、实践
内容有机融合,体现了程序设计方法中抽象、枚举、归
纳3个原则的运用,反复再现算法的复杂性、效率、折
中、重用等重要概念。
本书在内容的选取上体现了突出应用的原则——针
对应用型本科课程“教与学”的特点,在实例列举上力
求做到典型和恰当,并在各章都附有相应的习题(包括
理论习题和上机操作习题);以实例介绍各种数据结构
的应用。
在内容的组织上遵循“循序渐进”的原则——从数
据类型、线性表、栈、队列开讲数据结构,与前导课程
“高级语言程序设计”内容前后贯通,无缝衔接;内容
由浅入深,按常用数据结构、简单数据结构、树与二叉
树、图与网、查找和排序的次序安排主要教学内容。
在内容的叙述上符合“通俗易懂”的原则,在算法
的描述上力求结构清晰、描述正确、易读易理解,并对
每一个算法都做了大量的注释。在文字叙述上力求做到
由浅入深和深入浅出,用语大众化,增强可读性。
全书共 10 章。第 1 章介绍数据结构和算法的基
本概念,以及算法的评价方法;第2章介绍线性表的逻
辑结构、存储结构、基本操作,以及基本操作的时空复
杂度分析;第3章深入浅出地介绍栈的定义、顺序栈、
链栈,以及栈的应用;第4章介绍队列的基本概念、顺
序存储结构、链式存储结构,以及队列的应用;第5章
介绍串的定义、存储结构及其操作;第6章分别介绍了
一维数组、二维数组、多维数组,特殊矩阵的存储方法
,以及广义表的定义、抽象结构及存储结构;第7章介
绍树和二叉树,主要包括树和二叉树的定义、遍历方法
、基本应用;第8章介绍图,包括图的基本概念、图的
存储、图的遍历,以及图的应用,并介绍相关的性能分
析;第9章和第10章介绍查找和排序,并对其性能进行
分析和对比。
全书侧重应用性,力求教学内容与应用实际紧密结
合;强调实践性,建议读者多动手,通过实际编程实现
各种算法,并在深入分析的基础上改进算法或提出新的
算法,强调习题和上机实验题的重要性。
本书由逯洋担任主编,具体编写分工如下:逯洋负
责本书整体的章节设计,并编写了第2~4章;孙宏宇编
写了第5~8章;王晓宇编写了第9章和第10章;鲁铮编
写了第1章;李颖和李闯负责全书的文字校对工作。
编者在编写本书时,查阅和参考了众多文献资料,
从中得到了许多教益和启发,在此向参考文献的作者致
以诚挚的谢意。
由于时间仓促和编者水平有限,书中难免有不妥和
疏漏之处,敬请读者批评指正。
随便看

 

霍普软件下载网电子书栏目提供海量电子书在线免费阅读及下载。

 

Copyright © 2002-2024 101bt.net All Rights Reserved
更新时间:2025/1/19 8:12:40