图书盲袋,以书为“药”
欢迎光临中图网 请 | 注册
> >>
数据结构与问题求解(C++版·微课版)

数据结构与问题求解(C++版·微课版)

出版社:清华大学出版社出版时间:2024-03-01
开本: 其他 页数: 231
本类榜单:教材销量榜
中 图 价:¥44.8(7.6折) 定价  ¥59.0 登录后可看到会员价
加入购物车 收藏
运费6元,满39元免运费
?新疆、西藏除外
本类五星书更多>

数据结构与问题求解(C++版·微课版) 版权信息

数据结构与问题求解(C++版·微课版) 本书特色

(1)注重经典C语言程序设计知识的传递,通过实际应用背景强的案例来进行程序的设计与实现,提高学生的问题求解能力;
(2)注重学生计算思维能力、问题求解能力的培养,在经典知识的基础上增加了能力拓展,设计了具有复杂工程背景的问题来引导学生进行问题分析与求解;
(3)配套例题及习题挑战度较高,符合国家级一流本科课程“两性一度”的要求,方便教师组织学生开展问题求解实践、分组研讨等,提高学生的问题求解能力;
(4)提供了教学计划、微课视频,方便教师、学生使用。

数据结构与问题求解(C++版·微课版) 内容简介

本书是为以数据结构、问题求解为阅读目的的读者编写的教材,以培养读者的数据结构分析、算法设计、问题求解能力为基本目标。本书读者需要掌握程序设计基础知识,并具备一定的编程能力。 本书以数据结构为主线,通过问题和案例引入内容,重点讲解利用数据结构知识求解问题的思路、算法实现与执行过程、能力拓展。全书主要内容为概论、C++编程入门、线性表、堆栈和队列、串、数组和广义表、树与二叉树、图、查找、排序、索引结构等,讲解了栈和队列、KMP、哈夫曼树与编码、*短路径、*小生成树、拓扑排序、关键路径、哈希查找、二叉查找树、B树、B+树、Trie树等经典问题,并提供了能力拓展环节,引导读者开展数据结构应用实践。代码使用C++语言加以描述和实现,并用图解的形式详细描述了算法的执行过程,使读者能够深入了解数据结构相关算法的运行过程和结果。 本书可作为本科院校数据结构的教学用书,也可作为从事数据结构与算法设计的科技人员、算法竞赛选手的参考书及培训教材。

数据结构与问题求解(C++版·微课版) 目录

第1章概论1
1.1数据结构简介1
1.2数据结构的研究对象1
1.2.1数据逻辑结构1
1.2.2数据物理结构2
1.2.3数据存储结构2
1.3常用数据结构3
1.3.1数组3
1.3.2栈3
1.3.3队列3
1.3.4链表3
1.3.5树3
1.3.6图4
1.3.7堆4
1.3.8散列(哈希)表4
1.4数据结构常用运算4
1.4.1数据结构常用的运算4
1.4.2算法性能分析5
习题5
第2章C 编程入门6
2.1语法基础6
2.1.1数据类型6
2.1.2输入输出7
2.1.3命名空间7
2.1.4内存分配与回收8
2.1.5引用9
2.1.6内联函数10
2.1.7运算符重载10
2.1.8函数重载11
2.1.9异常11
2.2类与对象13
2.2.1概述13
2.2.2构造函数14
2.2.3对象的定义与使用15
2.2.4默认构造函数15
2.2.5成员初始化列表16
2.2.6this指针17
2.2.7析构函数18
2.3继承18
目录〖3〗2.3.1继承与派生的概念18
2.3.2继承语法形式18
2.3.3访问控制规则19
2.3.4派生类构造函数定义20
2.3.5派生类构造函数与析构函数调用次序20
2.3.6构造函数与析构函数构造规则23
2.4多态25
2.4.1多态的概念25
2.4.2虚函数25
2.4.3虚析构函数27
2.4.4纯虚函数与抽象类28
2.5模板与容器29
2.5.1模板概念29
2.5.2函数模板30
2.5.3类模板30
2.5.4容器31
2.5.5迭代器32
2.5.6关联式容器32
2.5.7算法33
2.6能力拓展34
2.6.1C#语言索引器模拟34
2.6.2数据访问服务器模拟35
习题39
第3章线性表40
3.1线性表概述40
3.2线性表的定义及基本操作40
3.3线性表存储结构41
3.3.1线性表的顺序存储结构41
3.3.2线性表的链表存储结构41
3.4线性表的实现41
3.4.1单链表41
3.4.2双向链表45
3.4.3循环链表46
3.5能力拓展47
3.5.1判断链表中是否存在环47
3.5.2约瑟夫环49
习题50
第4章堆栈和队列53
4.1堆栈53
4.1.1堆栈的定义53
4.1.2堆栈的基本操作及抽象数据类型描述53
4.2堆栈的存储结构及实现54
4.2.1堆栈的顺序存储结构及类的实现54
4.2.2堆栈的链表存储结构及类的实现56
4.3队列59
4.3.1队列的定义59
4.3.2队列的基本操作及抽象数据类型描述59
4.4队列的存储结构及实现60
4.4.1队列的顺序存储结构及类的实现60
4.4.2队列的链表存储结构及类的实现63
4.5堆栈和队列的应用场景65
4.5.1堆栈的应用场景65
4.5.2队列的应用场景66
4.6能力拓展66
4.6.1波兰表达式求值66
4.6.2银行排队模拟68
习题72
第5章串75
5.1串的定义75
5.1.1串的基本概念75
5.1.2抽象数据类型定义75
5.2串的实现76
5.2.1串的构造76
5.2.2串的赋值77
5.2.3子串截取78
5.2.4子串插入78
5.2.5串的复制80
5.2.6串的比较81
5.2.7串的拼接81
5.3串的模式匹配算法82
5.3.1暴力匹配82
5.3.2KMP匹配算法83
5.3.3改进的 KMP 算法87
5.4能力拓展88
习题90
第6章数组和广义表93
6.1数组的基本概念93
6.1.1数组的定义93
6.1.2数组的基本操作93
6.2数组的存储结构与抽象数据类型描述94
6.3特殊矩阵的压缩存储96
6.3.1对称矩阵96
6.3.2三角矩阵98
6.3.3对角矩阵99
6.4稀疏矩阵的压缩存储100
6.4.1稀疏矩阵的顺序存储结构——三元组顺序表101
6.4.2稀疏矩阵的链式存储结构——十字链表103
6.5广义表104
6.5.1广义表的定义和基本运算104
6.5.2广义表的存储105
6.6能力拓展106
习题107
第7章树与二叉树111
7.1树的概念111
7.2二叉树112
7.2.1二叉树的定义112
7.2.2二叉树的性质113
7.2.3二叉树的存储结构114
7.3二叉树的抽象数据类型描述116
7.4二叉树的操作117
7.4.1前序遍历117
7.4.2二叉树的构建118
7.4.3中序遍历119
7.4.4后序遍历119
7.4.5层序遍历120
7.4.6线索二叉树120
7.5二叉树与树、森林的转换123
7.5.1树与二叉树的转换123
7.5.2森林与二叉树的转换123
7.6树的存储结构125
7.6.1按树的度进行表示125
7.6.2孩子兄弟表示法126
7.7树的遍历127
7.7.1一般树的遍历127
7.7.2森林的遍历128
7.8哈夫曼树129
7.8.1概念129
7.8.2哈夫曼树的构造129
7.8.3哈夫曼树的实现130
7.8.4哈夫曼编码132
7.9能力拓展134
7.9.1根据树的前序和中序构造树134
7.9.2判断一棵树是否为平衡二叉树135
习题137
第8章图139
8.1图的基本概念139
8.2图的存储结构139
8.2.1图的邻接矩阵139
8.2.2图的邻接表140
8.2.3图的抽象数据类型描述141
8.2.4图类的实现141
8.3图的遍历与图的连通性142
8.3.1图的深度优先遍历142
8.3.2图的广度优先遍历144
8.3.3图的连通性和连通分量145
8.4图的*小生成树147
8.4.1*小生成树的基本概念147
8.4.2普里姆算法147
8.4.3克鲁斯卡尔算法150
8.5*短路径153
8.5.1单源*短路径算法153
8.5.2多源*短路径算法156
8.6拓扑排序与关键路径160
8.6.1拓扑排序160
8.6.2关键路径163
8.7能力拓展166
8.7.1迷宫*短路径求解166
8.7.2解不等式169
习题171
第9章查找175
9.1概述175
9.2静态查找表175
9.2.1顺序查找175
9.2.2折半查找176
9.2.3分块查找177
9.3动态查找表179
9.3.1二叉排序树179
9.3.2平衡二叉树183
9.4哈希查找185
9.4.1哈希函数186
9.4.2处理冲突的方法187
9.5能力拓展188
习题192
第10章排序194
10.1排序的基本概念194
10.2插入排序195
10.2.1直接插入排序195
10.2.2折半插入排序198
10.2.3希尔排序199
10.3交换排序202
10.3.1冒泡排序202
10.3.2快速排序205
10.4选择排序206
10.4.1简单选择排序206
10.4.2堆排序208
10.5归并排序211
10.6基数排序212
习题214
第11章索引结构217
11.1概述217
11.2静态索引结构218
11.2.1索引表218
11.2.2索引表查找219
11.3动态索引结构219
11.3.1B树的定义及运算219
11.3.2B 树的定义及运算223
11.4Trie树229
11.4.1Trie树的定义229
11.4.2Trie树的表示229
11.4.3Trie树的查找229
11.5哈希索引230
11.5.1静态哈希索引230
11.5.2动态哈希索引230
习题231
展开全部

数据结构与问题求解(C++版·微课版) 作者简介

邓泽林,博士,长沙理工大学计算机与通信工程学院软件工程系主任、特聘教授。主要从事模式识别、深度学习等相关研究。国家级一流本科课程“程序设计、算法与数据结构”负责人,ACM程序设计类竞赛教练,近两年指导学生获得ACM ICPC亚洲区域赛、天梯赛等国家级赛事一等奖1项、二等奖7项、三等奖十余项。 李峰,博士,长沙理工大学计算机与通信工程学院教授,综合交通运输大数据智能处理湖南省重点实验室主任。湖南省青少年信息学奥林匹克竞赛委员会主席、湖南省普通高校计算机类专业教学指导委员会副主任委员、湖南省计算机学会常务理事、CCF理论计算机专委会委员。主要从事计算机视觉、数字安全等相关研究。

商品评论(0条)
暂无评论……
书友推荐
本类畅销
编辑推荐
返回顶部
中图网
在线客服