数据结构与算法及其航空航天应用(C语言版)(项目式微课版)

978-7-115-66296-5
作者: 赵学武车葵赵妍
译者:
编辑: 贾鸿飞
分类: C语言

图书目录:

第 1 部分 数据结构

第 1 章 数据结构概述 2

11 数据结构的基本概念 2

111 什么是数据结构 2

112 基本概念与术语 2

12 数据结构的内容 4

121 数据的逻辑结构 4

122 数据的物理结构 6

123 数据的运算 7

13 算法基础 8

131 算法的概念 8

132 算法的特性 8

133 算法的评价 9

134 算法的复杂度 9

14 如何学习和运用数据结构与算法 12

15 习题 12

第 1 篇 线性结构

第 2 章 线性表 16

21 实例引入 16

211 合并两个有序线性表 16

212 一元多项式的运算 16

213 约瑟夫环问题 16

214 简单的管理系统 17

22 线性表的概念与基本操作 17

221 线性表的概念 17

222 线性表的基本操作 17

23 线性表的顺序存储及运算 18

231 顺序表 18

232 顺序表的基本运算 18

24 线性表的链式存储及运算 24

241 单链表 24

242 循环链表 30

243 双向链表 30

244 静态链表 32

25 顺序表与链表的比较 33

26 线性表的典型应用 33

261 应用实例一:合并有序线性表 33

262 应用实例二:一元多项式的运算 33

263 应用实例三:约瑟夫环问题 37

264 应用实例四:超市商品管理系统 38

27 航空航天应用实例分析与实现 39

271 航空售票系统 39

272 系统订购机票 41

273 系统增加航线 42

274 系统删除航线 42

275 系统退票 43

28 习题 43

第3 章 栈与队列 46

31 实例引入 46

32 栈 47

321 栈的概念与基本运算 47

322 栈的顺序存储 48

323 栈的链式存储 51

324 栈的典型应用 54

33 队列 56

331 队列的概念与基本运算 56

332 队列的存储 56

333 队列的典型应用 61

34 航空航天应用实例分析与实现 62

35 习题 64

第4 章 串 68

41 实例引入 68

42 串的概念及基本运算 68

421 串的概念 68

422 串的基本运算 69

43 串的顺序存储结构与运算 69

431 串的定长顺序存储与运算 69

432 串的堆存储与运算 71

44 串的链式存储结构与运算 72

441 块链串 72

442 块链串的运算 73

45 串的模式匹配 74

451 BF 算法 74

452 KMP 算法 75

46 航空航天应用实例分析与实现 76

47 习题 77

第5 章 数组和广义表 80

51 实例引入 80

52 数组 80

521 数组的定义 80

522 数组的顺序存储 81

53 矩阵的压缩存储 82

531 特殊矩阵的压缩存储 82

532 稀疏矩阵的压缩存储 85

54 广义表 85

541 广义表的概念与存储 85

542 广义表的基本操作 88

55 航空航天应用实例分析与实现 91

56 习题 92

第 2 篇 树形结构

第6 章 树 96

61 实例引入 96

611 数据编码压缩问题 96

612 树与等价类划分问题 96

613 表达式的树形表示及求值 96

614 N 皇后问题 97

62 树的相关概念 97

621 树的定义与表示 97

622 树的基本术语 97

623 树的基本操作 98

63 二叉树的定义、性质和存储 99

631 二叉树的定义和性质 99

632 二叉树的存储 102

64 二叉树的遍历与应用 104

641 二叉树的遍历 104

642 二叉树遍历的应用 107

65 线索二叉树 111

651 线索二叉树的基本概念 111

652 二叉树的线索化 112

653 线索二叉树的遍历 113

66 树和森林 114

661 树的表示与存储 114

662 树、森林与二叉树的转换 116

663 树和森林的遍历 118

67 哈夫曼树及应用 118

671 哈夫曼树 119

672 哈夫曼编译码 122

68 航空航天应用实例分析与实现 124

69 习题 125

第3 篇 图状结构

第7 章 图 130

71 实例引入 130

711 城市交通问题 130

712 工程问题 131

72 图的相关概念 131

721 图的概念 131

722 图的基本操作 132

73 图的存储表示 133

731 邻接矩阵表示法 133

732 邻接表表示法 137

733 十字链表表示法 140

734 多重链表表示法 141

74 图的遍历 142

741 图的深度优先搜索遍历 142

742 图的广度优先搜索遍历 143

75 图的典型应用 144

751 最小生成树 144

752 最短路径 148

753 拓扑排序 151

754 关键路径 153

76 航空航天应用实例分析与实现 154

761 航空飞行线路规划系统的结构体类型 154

762 航空飞行线路规划系统实现 155

77 习题 156

第4 篇 查找与排序

第8 章 查找 162

81 查找的相关概念 162

82 静态查找 163

821 顺序查找 163

822 折半查找 164

823 分块查找 166

83 动态查找 168

831 基于二叉树的查找 168

832 基于B 树的查找 177

84 哈希表查找 182

841 哈希表的定义 182

842 哈希函数的构造方法 183

843 处理冲突的方法 184

844 哈希表查找 187

845 哈希表的查找分析 189

85 航空航天应用实例分析与实现 189

851 航空售票系统查询航班 189

852 航空售票系统查询订单 190

853 航空售票系统查询航班候补乘客订单 191

86 习题 191

第9 章 排序 196

91 排序的相关概念 196

911 排序方法的稳定性 196

912 排序方法的分类 196

92 插入类排序 198

921 直接插入排序 198

922 折半插入排序 200

923 希尔排序 201

93 交换类排序 202

931 冒泡排序 202

932 快速排序 204

94 选择类排序 205

941 简单选择排序 205

942 树形选择排序 207

943 堆排序 207

95 归并类排序 211

96 分配类排序 212

961 多关键字排序 212

962 链式基数排序 213

97 外部排序 215

971 外部排序概述 215

972 置换选择排序 216

973 多路归并外排序 219

98 航空航天应用实例分析与实现 221

99 习题 222

第 2 部分 算法设计

第 10 章 算法设计方法 226

101 算法概述 226

1011 算法概念与表示 226

1012 算法的描述 226

1013 表达算法的抽象机制 228

1014 算法复杂性分析 228

102 递归与分治 232

1021 递归的概念与原理 233

1022 分治法的基本思想 235

1023 分治法的典型应用 236

103 动态规划 240

1031 问题引入 241

1032 动态规划算法的基本要素与基本步骤 241

1033 动态规划算法的典型应用举例 242

104 贪心算法 253

1041 问题引入 253

1042 贪心算法的基本要素与特点 253

1043 贪心算法的典型应用 254

105 回溯法 259

1051 问题引入 259

1052 回溯法的算法框架 259

1053 回溯法的典型应用 264

1054 小结 268

106 分支限界法 268

1061 问题引入 268

1062 分支限界法的基本思想 268

1063 分支限界法的典型应用 273

107 算法设计策略比较 283

108 航空航天应用案例分析与算法设计 284

1081 飞行规划案例 284

1082 飞机维修次序案例 286

1083 航运装载案例 286

109 习题 288

参考文献 292

详情

本书系统地讲解数据结构与算法设计的相关知识,共分两部分。第一部分讲解数据结构的主要内容,包括数据结构概述、线性表、栈与队列、串、数组和广义表、树、图、查找及排序等,并以航空航天实例为基础讲解实际应用。第二部分重点阐述典型的算法设计方法,包括算法概述、递归与分治、动态规划、贪心算法、回溯法等理论与实例应用。

图书摘要

相关图书

C语言最佳实践
C语言最佳实践
C语言编程从入门到精通
C语言编程从入门到精通
代码审计——C/C++实践
代码审计——C/C++实践
大规模C++软件开发 卷1:过程与架构
大规模C++软件开发 卷1:过程与架构
C程序设计教程(第9版)
C程序设计教程(第9版)
C/C++代码调试的艺术(第2版)
C/C++代码调试的艺术(第2版)

相关文章

相关课程