图书中心

计算机类首页>图书中心>计算机类

计算思维工程实践(C++版)
  • 书     名:计算思维工程实践(C++版)
  • 出版时间:2023-07-10
  • 编 著 者:徐雅静
  • 版       次:1-2
  • I  S  B N:978-7-5635-6923-6
  • 定       价:¥39.00元

内容简介线

本教材围绕计算本质,首先对数学思维、计算思维、AI思维、大数据思维之间的关系进行了阐述,进而针对计算思维解决数学问题、计算思维解决数学技巧、计算思维解决抽象问题、计算思维解决通用问题、计算思维与智能控制和计算思维与文本处理这6章,精心设计实践案例,并从不同思维角度、按照不同效率原则对案例进行了逐步实现,从而为学生在课后进行编程实践提供更多、更好的素材。
本教材内容按照由浅入深、由简单到复杂的方式进行组织,内容丰富,案例设计覆盖了简单数学问题和复杂的线路查询问题、智能控制以及文本分词和检索等应用,贴合生活和工程实践,章节层次合理、设计科学,可作为高等院校各相关专业的程序设计类课程教材。

目录介绍线

















第1章计算思维的本质1

1.1计算机的发明2

1.1.1计算机的数学原理2

1.1.2计算机的工程知识3

1.2思维方式概述5

1.2.1数学思维5

1.2.2计算思维6

1.2.3AI思维7

1.2.4大数据思维8

本章小结9

第2章计算思维解决数学问题10

2.1多项式运算10

2.1.1一元多项式求值10

2.1.2多项式相乘12

2.1.3多项式相除13

2.2求解一元多项式的根15

2.2.1算法实践——二分法15

2.2.2算法实践——弦割法17

2.2.3思维扩展18

2.3求解定积分20

2.3.1算法实践——牛顿法20

2.3.2算法实践——蒙特卡罗随机投点法22

2.3.3算法实践——蒙特卡罗平均值法24

2.4最大公约数问题26

2.4.1算法实践——质因数分解法26

2.4.2算法实践——辗转相除法26

2.4.3算法实践——更相减损法27

2.4.4算法实践——Stein算法28

2.5随机数的产生29

2.5.1算法实践——线性同余法29

2.5.2思维扩展31

本章小结33




第3章计算思维解决数学技巧34

3.1寻找数组中的最大值和最小值34

3.1.1算法实践——独立求解34

3.1.2算法实践——快速求解135

3.1.3算法实践——快速求解236

3.1.4算法实践——分治法37

3.2计算最大值和次大值38

3.2.1算法实践——分步计算38

3.2.2算法实践——同步计算40

3.3数组循环移位41

3.3.1算法实践——循环右移N位41

3.3.2算法实践——三次翻转法42

3.4奇数偶数分离问题43

3.4.1算法实践——简单算法43

3.4.2算法实践——二分区算法44

3.4.3思维扩展——荷兰国旗问题45

3.5数制转换问题47

3.5.1算法实践——递归48

3.5.2算法实践——栈49

3.6删除重复元素问题50

3.6.1算法实践——简单算法50

3.6.2算法实践——最优算法51

3.7连续最大数值问题52

本章小结54

第4章计算思维解决抽象问题55

4.1比赛名次问题55

4.2抢20游戏问题57

4.3莫尔斯码问题58

4.3.1编码思维58

4.3.2问题分析59

4.3.3算法实践——编码思维60

4.4微信红包算法66

4.4.1问题分析66

4.4.2算法实践 66

4.5智力拼图问题69

4.5.1问题分析69

4.5.2算法设计——BFS算法71

4.5.3算法实现72

4.6基因序列相似度问题74

4.6.1问题分析74

4.6.2算法设计——动态规划75

4.6.3算法实现77

4.7地铁线路查询问题79

4.7.1问题分析79

4.7.2数据整理79

4.7.3数据结构设计82

4.7.4优化的Dijkstra算法实现85

4.7.5完整的类实现87

本章小结90

第5章计算思维解决通用问题91

5.1总和最大区间问题91

5.1.1问题分析91

5.1.2算法实现——三重循环O(n3)92

5.1.3算法实现——二重循环O(n2)93

5.1.4算法实现——分治法O(nlogn)94

5.1.5算法实现——正反扫描法O(n)97

5.1.6算法实现——动态规划O(n)100

5.1.7算法变形——连续最大数值问题103

5.2矩阵问题104

5.2.1矩阵相乘104

5.2.2大规模矩阵相乘108

5.3矩阵应用——BMP图像处理113

5.3.1BMP文件结构分析113

5.3.2简单图像处理——平滑技术122

本章小结124

第6章计算思维与智能控制125

6.1电梯调度分析125

6.2俄罗斯方块游戏分析126

6.3相关基础知识127

6.3.1控制台数据类型127

6.3.2常用系统函数128

6.3.3控制台相关的API及封装128

6.3.4多线程和互斥信号量130

6.3.5编程技巧131

6.4电梯调度控制——工程实践134

6.4.1设计思想134

6.4.2函数设计135

6.4.3函数实现135

6.5俄罗斯方块——工程实践142

6.5.1设计思想142

6.5.2类设计143

6.5.3类实现148

本章小结159

第7章计算思维与文本处理160

7.1字符串的拷贝、比较和统计160

7.1.1字符串拷贝160

7.1.2字符串比较162

7.1.3字符串统计164

7.2字符串相似度问题166

7.2.1算法实践——编辑距离167

7.2.2算法实践——最小操作次数168

7.2.3算法实践——最长公共子序列169

7.3字符串匹配问题172

7.3.1算法实践——BF算法173

7.3.2算法实践——KMP算法174

7.4AC自动机179

7.4.1问题分析179

7.4.2工程实践180

7.4.3扩展思考192

7.5AC自动机的应用——中文分词192

7.5.1问题分析192

7.5.2工程实践193

7.6AC自动机的应用——搜索引擎之倒排索引196

7.6.1问题分析196

7.6.2工程实践198

本章小结203

参考文献204