Runaway Robot游戏通关算法实现过程总结

简介: 写好Runaway Robot游戏的通关算法的java实现已经有段时间了。现在写下这个过程出现的问题,并写下经验。给自己反思之用,也给自己的空间增加些人气。 开始算法设计的时候由于看是玩游戏的前很多关时已近有了粗糙的思路,但在实际情况中还是遇到了一些问题。例如,安全区(绿色部分)是否放入全局的布局矩阵中来;还有就是邻居感染,是否要对于计算矩阵(就是对于全局布局矩阵信息的缩小到一个小的矩阵

写好Runaway Robot游戏的通关算法的java实现已经有段时间了。现在写下这个过程出现的问题,并写下经验。给自己反思之用,也给自己的空间增加些人气。

开始算法设计的时候由于看是玩游戏的前很多关时已近有了粗糙的思路,但在实际情况中还是遇到了一些问题。例如,安全区(绿色部分)是否放入全局的布局矩阵中来;还有就是邻居感染,是否要对于计算矩阵(就是对于全局布局矩阵信息的缩小到一个小的矩阵中来的矩阵)的点要多次遍历 ... ... 还有很多,由于时间关系,加上没有留下来的算法设计过程的随手笔记。这是不好的习惯!!谨记!!!

在根据算法进行java实现,由于自己的编程水平,出现了更多的错误。哎!当时没有写笔记真是一个悲剧性的事情,现在靠代码来回忆,很多细节都不能来记忆起来了。悲催。但,还是记起来了一些编写代码的经验,现在就写下来吧。第一,基于算法就对于每一步定一个私有函数。这样不仅方便code理解,还可以方便编程和bug查找。第二,对于for循环的边界,异常小心。在编code过程中,出现了很多由于边界出现的空指针异常,还有就是结果没有等。第三,不要copy code。但想复用code时,那就进行code重构吧。不要用copy,不然你bug寻找的时间会远远大于coding或代码重构的时间。谨记!!

好了,就写这些吧。由于没有当时的记录,只能这些了。要是以后回顾,要是有新的感触,会随时修改。

总结:

1 时刻记录。不论是算法设计还是编程过程,都要来记录,以方便来总结。首要,谨记!!

2 算法设计也要考虑细节性问题。要是算法设计也和思考一样,那么就会在编程阶段就会造成很会的影响。

3 编程时注意for循环的边界问题。for循环的边界会找出结果的错误或异常。但,还是时刻出现这种问题。应该引以为界!

4 不要copy code。想用就提炼出来,重构一个新的私用函数,这样可以复用。copy code会造成代码凌乱,还会由于未改关键的变量找出运行结果的不可测性且造成bug寻找的死角(不会想到这是由于copy code 造成)。

相关文章
|
2月前
|
人工智能 算法 Java
【搜索算法】数字游戏(C/C++)
【搜索算法】数字游戏(C/C++)
|
4月前
|
人工智能 算法 Java
LeetCode经典算法题:井字游戏+优势洗牌+Dota2参议院java解法
LeetCode经典算法题:井字游戏+优势洗牌+Dota2参议院java解法
54 1
|
4月前
|
算法
互动游戏解决遇到问题之基于射线投射寻路算法的问题如何解决
互动游戏解决遇到问题之基于射线投射寻路算法的问题如何解决
|
4月前
|
算法 Python
【python】python基于 Q-learning 算法的迷宫游戏(源码+论文)【独一无二】
【python】python基于 Q-learning 算法的迷宫游戏(源码+论文)【独一无二】
|
6月前
|
算法 数据挖掘 开发者
LeetCode题目55:跳跃游戏【python5种算法贪心/回溯/动态规划/优化贪心/索引哈希映射 详解】
LeetCode题目55:跳跃游戏【python5种算法贪心/回溯/动态规划/优化贪心/索引哈希映射 详解】
|
6月前
|
算法 JavaScript 前端开发
【经典算法】LCR187:破冰游戏(约瑟夫问题,Java/C/Python3/JavaScript实现含注释说明,Easy)
【经典算法】LCR187:破冰游戏(约瑟夫问题,Java/C/Python3/JavaScript实现含注释说明,Easy)
90 1
|
6月前
|
算法
【经典LeetCode算法题目专栏分类】【第9期】深度优先搜索DFS与并查集:括号生成、岛屿问题、扫雷游戏
【经典LeetCode算法题目专栏分类】【第9期】深度优先搜索DFS与并查集:括号生成、岛屿问题、扫雷游戏
|
6月前
|
算法 机器人
【经典LeetCode算法题目专栏分类】【第5期】贪心算法:分发饼干、跳跃游戏、模拟行走机器人
【经典LeetCode算法题目专栏分类】【第5期】贪心算法:分发饼干、跳跃游戏、模拟行走机器人
|
6月前
|
SQL 算法 数据可视化
python 贪心算法 动态规划实现 跳跃游戏ll【力扣题45】
python 贪心算法 动态规划实现 跳跃游戏ll【力扣题45】
|
7月前
|
存储 算法 PHP
开发一款扑克游戏,请给出一套洗牌算法,公平的洗牌并将洗好的牌存储在一个整形数组里?
开发一款扑克游戏,请给出一套洗牌算法,公平的洗牌并将洗好的牌存储在一个整形数组里?
45 1
开发一款扑克游戏,请给出一套洗牌算法,公平的洗牌并将洗好的牌存储在一个整形数组里?