编辑推荐
详解算法代码和游戏开发代码。
内容简介
本书通过趣味游戏编程项目讲解算法,提升读者学习算法的兴趣,降低读者学习算法的难度,增强读者将算法应用于编程实践的能力。
作者简介
作者童晶,浙江大学计算机专业博士,河海大学计算机系副教授、硕士生导师,中科院兼职副研究员。具有15年的一线编程教学经验,开设课程在校内广受好评,指导学生获得英特尔嵌入式比赛全国一等奖、“挑战杯”全国三等奖、“中国软件杯”全国一等奖、中国大学生服务外包大赛全国一等奖等众多奖项。被评为河海大学优秀主讲教师;在知乎、网易云课堂、中国大学MOOC等平台的教学课程已有上百万次的阅读量与学习量。
章节目录
版权信息
内容提要
前言
资源与支持
第1章 猜数字
1.1 实现猜数字游戏
1.2 顺序查找
1.3 二分查找
1.4 算法的效率
1.5 小结
第2章 飞翔的小鸟
2.1 EasyX图形库
2.2 小球的自由落体
2.3 按空格键让小球向上飞
2.4 游戏程序框架改进
2.5 添加水管障碍物
2.6 得分的计算与显示
2.7 更多水管障碍物
2.8 图片的使用
2.9 小结
第3章 得分排行榜
3.1 插入排序及其可视化
3.2 冒泡排序及其可视化
3.3 选择排序及其可视化
3.4 快速排序及其可视化
3.5 拓展练习:查找算法和更多排序算法的可视化
3.6 小结
第4章 汉诺塔
4.1 实现汉诺塔游戏
4.1.1 定义柱子结构体与可视化
4.1.2 通过鼠标点击选中柱子
4.1.3 移动盘子
4.1.4 判断盘子是否可以移动
4.1.5 提示信息与胜负判断
4.2 递归求解汉诺塔问题
4.3 汉诺塔自动求解过程的可视化
4.4 拓展练习:绘制分形树
4.5 小结
第5章 八皇后
5.1 实现八皇后游戏
5.1.1 绘制棋盘和提示信息
5.1.2 通过鼠标交互绘制皇后棋子
5.1.3 游戏胜负判断
5.2 暴力搜索
5.2.1 八重for循环输出八皇后的所有摆法
5.2.2 暴力搜索求出八皇后的所有摆法
5.3 回溯
5.4 八皇后游戏自动求解过程的可视化
5.5 拓展练习:一笔画游戏、数独游戏
5.6 小结
第6章 消灭星星
6.1 消灭星星游戏基础版
6.1.1 基础数据结构和画面显示
6.1.2 通过鼠标点击消除单个方块
6.2 基于FloodFill算法消除连通的方块
6.3 方块位置的更新
6.3.1 方块下落
6.3.2 方块左移
6.4 游戏完善
6.5 拓展练习:扫雷游戏
6.6 小结
第7章 贪吃蛇
7.1 常见数据结构
7.1.1 数组
7.1.2 链表
7.1.3 队列
7.1.4 栈
7.1.5 图
7.1.6 树
7.2 标准模板库
7.2.1 vector
7.2.2 queue
7.2.3 stack
7.2.4 string
7.2.5 map
7.3 实现贪吃蛇游戏
7.3.1 数据结构和画面显示
7.3.2 蛇的自动移动
7.3.3 通过鼠标控制蛇的移动方向
7.3.4 添加食物和障碍物
7.3.5 蛇吃食物后的处理
7.3.6 为蛇添加眼睛
7.4 拓展练习:飞机大战
7.5 小结
第8章 走迷宫
8.1 实现走迷宫游戏
8.1.1 迷宫地图初始化与显示
8.1.2 添加小球
8.1.3 通过键盘控制小球移动
8.2 基于十字分割算法自动生成迷宫地图
8.3 图的广度优先搜索算法
8.4 图的深度优先搜索算法
8.5 迷宫游戏自动求解
8.6 小结
第9章 连连看
9.1 连连看游戏基础版
9.1.1 数据初始化与显示
9.1.2 记录和处理鼠标点击操作
9.2 基于广度优先搜索算法的消除判断
9.2.1 基于广度优先搜索算法的方格连线和消除
9.2.2 基于广度优先搜索算法限制拐弯次数
9.2.3 游戏胜负的判断与显示
9.3 拓展练习:围住神经猫
9.4 小结
第10章 吃豆人
10.1 吃豆人游戏基础版
10.1.1 地图的存储与显示
10.1.2 玩家对吃豆人的控制
10.1.3 图片切换与动画效果
10.1.4 幽灵随机移动
10.1.5 胜负判断
10.2 迪杰斯特拉算法
10.3 贪婪最佳优先搜索算法与A*算法
10.4 三种算法的实现与对比
10.5 幽灵自动追踪
10.6 小结
第11章 滑动拼图
11.1 实现滑动拼图游戏
11.1.1 数据结构和画面显示
11.1.2 生成随机初始状态
11.1.3 鼠标交互与胜利判断
11.2 状态空间上的搜索算法
11.3 滑动拼图游戏的自动求解
11.4 拓展练习:农夫过河游戏
11.5 小结
第12章 井字棋
12.1 双人对战井字棋
12.1.1 数据结构和画面显示
12.1.2 通过鼠标交互下棋
12.1.3 胜负判断
12.2 棋局的估值函数
12.3 基于博弈树的极大极小值搜索算法实现人机对战下棋
12.4 基于α-β剪枝搜索算法实现人机对战下棋
12.5 拓展练习:人机对战五子棋
12.6 小结
第13章 垒积木
13.1 实现垒积木游戏
13.1.1 积木块的绘制
13.1.2 积木块的旋转
13.1.3 多个积木与画面显示
13.1.4 垒积木操作
13.1.5 高度统计与胜负判断
13.1.6 游戏完善
13.2 递归回溯求解垒积木问题
13.3 动态规划求解垒积木问题
13.4 小结
第14章 十步万度
14.1 实现十步万度游戏
14.1.1 数据结构与画面显示
14.1.2 鼠标交互与指针旋转
14.1.3 旋转传播与得分统计
14.1.4 显示旋转过程动画
14.2 遗传算法基础
14.3 基于遗传算法自动求解十步万度游戏
14.4 小结
算法超简单:趣味游戏带你轻松入门与实践是2024年由人民邮电出版社出版,作者童晶。
得书感谢您对《算法超简单:趣味游戏带你轻松入门与实践》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。