书籍详情
人工智能算法基础
作者:徐卫
出版社:机械工业出版社
出版时间:2022-08-01
ISBN:9787111711520
定价:¥59.00
购买这本书可以去
内容简介
在人工智能时代下,本书将带领读者通过学习一些简单的计算机数据结构和相关算法,来提高使用编程语言的能力,从而探索更加广阔的编程世界。本书主要介绍了线性表、栈与队列、递归、搜索和排序、树、图等常用的数据结构和算法的概念和*基本的应用。本书引入了各种各样的生活知识来类比,并充分运用图形语言来体现抽象内容,对数据结构所涉及的一些经典算法逐行分析、多算法比较。本书有趣易读,算法讲解细致深刻,是一本非常适合算法入门的读物。 \n本书可作为青少年的自学参考书,也可作为中学生学习人工智能所应用的算法的参考教材。 \n
作者简介
徐卫,中学高级教师,苏州大市学科带头人。现任江苏省苏州第十中学校信息技术学科教师、信息中心主任、安教处主任、教务处副主任。其教科研成果获得苏州市教育教学成果一等奖。执教公开课30多节,发表论文10多篇,编写教材3部,主持或参与国家、省、市级课题4项。教学理念:培养学生的创新精神、创新意识和创新思维习惯,鼓励合作与竞争,倡导个性化的学习方式。 \n \n庄浩,中学高级教师,苏州市教育工作者、苏州市教育局“共产党员”、苏州市直属学校德育工作者、苏州市区“指导学生自学先进教师”、江苏省化学奥林匹克高级教练员。近年来,有多篇论文在省市级期刊发表或获奖,在江苏省基础教育青年教师教学基本功大赛(高中化学)中获得省一等奖、苏州市教师把握学科能力竞赛中获大市一等奖、苏州市高中化学教师评优课比赛中获得大市一等奖。曾任校督导室主任,并多年担任学校教务处主任和年级部主任等职务,积累了丰富的教育教学管理经验,现任江苏省苏州第十中学校副校长。
目录
目录 \n
前 言 \n
第1章 初探数据结构1 \n
1.1?数据结构起源1 \n
1.2?数据结构相关基本概念和专业术语1 \n
1.2.1?数据1 \n
1.2.2 数据元素2 \n
1.2.3 数据项2 \n
1.2.4 数据对象2 \n
1.2.5 数据结构3 \n
1.3 逻辑结构与物理结构3 \n
1.3.1 逻辑结构3 \n
1.3.2 物理结构5 \n
1.4 参考题6 \n
第2章 算法7 \n
2.1 数据结构与算法的关系7 \n
2.2 两种算法的比较7 \n
2.3 算法的定义8 \n
2.4 算法的特性9 \n
2.4.1 输入输出9 \n
2.4.2 有穷性9 \n
2.4.3 确定性9 \n
2.4.4 可行性9 \n
2.5 算法设计的要求10 \n
2.5.1 正确性10 \n
2.5.2 可读性10 \n
2.5.3 健壮性11 \n
2.5.4 时间效率和存储量11 \n
2.6 算法效率的度量方法11 \n
2.6.1 事后统计方法11 \n
2.6.2 事前分析估算方法12 \n
2.7 参考题13 \n
第3章 线性表14 \n
3.1 线性表的定义14 \n
3.2 线性表的顺序存储结构15 \n
3.2.1 两种存储结构15 \n
3.2.2 顺序存储结构的地址计算方法16 \n
3.3 线性表的链式存储结构16 \n
3.3.1 顺序存储结构的不足的解决办法16 \n
3.3.2 线性表链式存储结构定义17 \n
3.4 单链表结构与顺序存储结构的优缺点19 \n
3.5 列表20 \n
3.5.1 无序列表抽象数据类型20 \n
3.5.2 实现无序列表:链表21 \n
3.5.3 实现有序列表31 \n
3.6 参考题34 \n
第4章?栈与队列35 \n
4.1 栈的定义35 \n
4.2 栈的抽象数据类型36 \n
4.3 用Python实现栈37 \n
4.4 队列的定义39 \n
4.5 队列的抽象数据类型40 \n
4.6 用Python实现队列41 \n
4.7 双端队列的定义42 \n
4.8 双端队列的抽象数据类型43 \n
4.9 用Python实现双端队列44 \n
4.10 参考题45 \n
第5章 递归46 \n
5.1 引言46 \n
5.2 何谓递归46 \n
5.2.1 计算一列数之和46 \n
5.2.2?递归三原则49 \n
5.2.3?将整数转换成任意进制的字符串49 \n
5.3?栈帧:实现递归51 \n
5.4 递归可视化53 \n
5.5 复杂的递归问题59 \n
5.6 探索迷宫62 \n
5.7 动态规划68 \n
5.8 参考题75 \n
第6章 搜索和排序76 \n
6.1 引言76 \n
6.2 搜索76 \n
6.2.1?顺序搜索76 \n
6.2.2 二分搜索79 \n
6.2.3 散列81 \n
6.3 排序92 \n
6.3.1 冒泡排序92 \n
6.3.2 选择排序96 \n
6.3.3 插入排序97 \n
6.3.4 希尔排序99 \n
6.3.5 归并排序102 \n
6.3.6 快速排序106 \n
6.4 参考题109 \n
第7章 树110 \n
7.1 引言110 \n
7.2 树的定义113 \n
7.3 树的实现114 \n
7.3.1 第Ⅰ种实现方法——列表法115 \n
7.3.2 第Ⅱ种实现方法——节点法118 \n
7.4 二叉树的应用121 \n
7.4.1 解析树121 \n
7.4.2 树的遍历127 \n
7.5 参考题131 \n
第8章 图132 \n
8.1 引言132 \n
8.2 定义132 \n
8.3 图的抽象数据类型134 \n
8.3.1 邻接矩阵134 \n
8.3.2 邻接表135 \n
8.3.3 实现136 \n
8.4 参考题140 \n
附录141 \n
参考答案141
前 言 \n
第1章 初探数据结构1 \n
1.1?数据结构起源1 \n
1.2?数据结构相关基本概念和专业术语1 \n
1.2.1?数据1 \n
1.2.2 数据元素2 \n
1.2.3 数据项2 \n
1.2.4 数据对象2 \n
1.2.5 数据结构3 \n
1.3 逻辑结构与物理结构3 \n
1.3.1 逻辑结构3 \n
1.3.2 物理结构5 \n
1.4 参考题6 \n
第2章 算法7 \n
2.1 数据结构与算法的关系7 \n
2.2 两种算法的比较7 \n
2.3 算法的定义8 \n
2.4 算法的特性9 \n
2.4.1 输入输出9 \n
2.4.2 有穷性9 \n
2.4.3 确定性9 \n
2.4.4 可行性9 \n
2.5 算法设计的要求10 \n
2.5.1 正确性10 \n
2.5.2 可读性10 \n
2.5.3 健壮性11 \n
2.5.4 时间效率和存储量11 \n
2.6 算法效率的度量方法11 \n
2.6.1 事后统计方法11 \n
2.6.2 事前分析估算方法12 \n
2.7 参考题13 \n
第3章 线性表14 \n
3.1 线性表的定义14 \n
3.2 线性表的顺序存储结构15 \n
3.2.1 两种存储结构15 \n
3.2.2 顺序存储结构的地址计算方法16 \n
3.3 线性表的链式存储结构16 \n
3.3.1 顺序存储结构的不足的解决办法16 \n
3.3.2 线性表链式存储结构定义17 \n
3.4 单链表结构与顺序存储结构的优缺点19 \n
3.5 列表20 \n
3.5.1 无序列表抽象数据类型20 \n
3.5.2 实现无序列表:链表21 \n
3.5.3 实现有序列表31 \n
3.6 参考题34 \n
第4章?栈与队列35 \n
4.1 栈的定义35 \n
4.2 栈的抽象数据类型36 \n
4.3 用Python实现栈37 \n
4.4 队列的定义39 \n
4.5 队列的抽象数据类型40 \n
4.6 用Python实现队列41 \n
4.7 双端队列的定义42 \n
4.8 双端队列的抽象数据类型43 \n
4.9 用Python实现双端队列44 \n
4.10 参考题45 \n
第5章 递归46 \n
5.1 引言46 \n
5.2 何谓递归46 \n
5.2.1 计算一列数之和46 \n
5.2.2?递归三原则49 \n
5.2.3?将整数转换成任意进制的字符串49 \n
5.3?栈帧:实现递归51 \n
5.4 递归可视化53 \n
5.5 复杂的递归问题59 \n
5.6 探索迷宫62 \n
5.7 动态规划68 \n
5.8 参考题75 \n
第6章 搜索和排序76 \n
6.1 引言76 \n
6.2 搜索76 \n
6.2.1?顺序搜索76 \n
6.2.2 二分搜索79 \n
6.2.3 散列81 \n
6.3 排序92 \n
6.3.1 冒泡排序92 \n
6.3.2 选择排序96 \n
6.3.3 插入排序97 \n
6.3.4 希尔排序99 \n
6.3.5 归并排序102 \n
6.3.6 快速排序106 \n
6.4 参考题109 \n
第7章 树110 \n
7.1 引言110 \n
7.2 树的定义113 \n
7.3 树的实现114 \n
7.3.1 第Ⅰ种实现方法——列表法115 \n
7.3.2 第Ⅱ种实现方法——节点法118 \n
7.4 二叉树的应用121 \n
7.4.1 解析树121 \n
7.4.2 树的遍历127 \n
7.5 参考题131 \n
第8章 图132 \n
8.1 引言132 \n
8.2 定义132 \n
8.3 图的抽象数据类型134 \n
8.3.1 邻接矩阵134 \n
8.3.2 邻接表135 \n
8.3.3 实现136 \n
8.4 参考题140 \n
附录141 \n
参考答案141
猜您喜欢