双体软件精英产业学院
乐学 乐教 创业 创造
双体视野 当前位置:首页>双体视野>正文

【双体公开课】与孙老师一起解密经典算法游戏“老鼠走迷宫”

时间:2022-10-14 12:20:14 作者: 来源:  点击数:


2022年10月12日晚19:00时,泰科双体三期的全体学员迎来了开学以来的第一场技术公开课!这次孙传波老师为大家带来了精彩的算法游戏《老鼠走迷宫》,虽然是线上形式,却依然没有影响同学们的学习热情!

相信大家一定对数组不陌生吧?那二维数组呢?刚一开始孙老师就抛出了跨次元打击的问题,让我们遭到了智商轰炸。

“二维数组是啥?我怎么没听说过?”“老师是不是没讲过?”“没讲过吧……”

但似曾相识又荡然无存的概念,不仅没有打垮同学们的斗志,反而引起了同学们的兴趣。

对比——一维数组:

二维数组相比一维数组更复杂,但是也有更广阔的空间,也存在更多的可能(比如说设计地图和九九乘法表),一维数组能干的事情二维数组都能做。

1. 创建迷宫:

生成一个二维数组(相比两个普通数组,是更优解)用0和1设置墙体与可通行地段。

2 补充墙体:

四周用1表示为墙,再设置两堵墙构成简易迷宫。

3. 输出当前地图:

二维数组的遍历其实和九九乘法表的打印类似(空格和换行,同学们的两大痛)。

那迷宫都设计好了,没有player怎么能行呢?很快,一只机巧的“代码小老鼠”便生成了

4. 制定专门用来找出通路的方法(findaway方法):

设定终点值与不到终点时的行动策略

走过的地方做好标记,设置行动优先级以及被自己走过的地方形成死路,如果走成死路应该如何解决。

那迷宫都设计好了,没有player怎么能行呢?很快,一只机巧的“代码小老鼠”便生成了

1. 二维数组:一位数组是线性的,二维数组是矩阵。

2. 递归:就是在运行的过程中不断的调用自己,递归通常在非线性结构中发挥作用。

问题解决:通过逆向思维,使用讲授的递归法,考虑到终止条件,就可以分析出相关算法;达到解决问题的目的。

最后在老鼠“轻车熟路”的脚步中,这节课堂也画上了圆满的句号。

通过孙老师对《老鼠走迷宫》这个小游戏的讲解,同学们既丰富了知识储备,也能从中获得乐趣,可谓一箭双雕。

“积土成山,风雨兴焉;积水成渊,蛟龙生焉”。这一个小小的游戏也凝结了创作者的心血,老鼠走迷宫在程序世界里想要实现,也是需要各种逻辑代码进行框架的内容填充和bug修复。

所谓“吃得苦中苦,方为人上人”,回味这一堂课,相信同学们也会坚定努力学习的信念吧。


官方微信
官方微博
官方抖音
Baidu
map