展开全部

主编推荐语

详解算法代码和游戏开发代码。

内容简介

本书通过趣味游戏编程项目讲解算法,提升读者学习算法的兴趣,降低读者学习算法的难度,增强读者将算法应用于编程实践的能力。

目录

  • 版权信息
  • 内容提要
  • 前言
  • 资源与支持
  • 第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 小结
展开全部

评分及书评

尚无评分
目前还没人评分

出版方

人民邮电出版社

人民邮电出版社是工业和信息化部主管的大型专业出版社,成立于1953年10月1日。人民邮电出版社坚持“立足信息产业、面向现代社会、传播科学知识、服务科教兴国”,致力于通信、计算机、电子技术、教材、少儿、经管、摄影、集邮、旅游、心理学等领域的专业图书出版。