前言
时隔一个月,再带大家尝试借助哈密顿环来自动玩一波贪吃蛇小游戏呗,废话不多说,让我们愉快地开始吧~
开发工具
**Python版本:**3.6.4
相关模块:
pygame模块;
以及一些python自带的模块。
环境搭建
安装Python并添加到环境变量,pip安装需要的相关模块即可。
原理简介
这里我们主要讲如何设计算法来自动玩贪吃蛇小游戏。先来简单介绍一下哈密顿环的定义(引自维基百科):
- 哈密顿图是一个无向图,由哈密顿爵士提出,
- 由指定的起点前往指定的终点,途中经过所有其他节点且只经过一次。
- 在图论中是指含有哈密顿回路的图,
- 闭合的哈密顿路径称作哈密顿回路(Hamiltonian cycle),
- 含有图中所有顶点的路径称作哈密顿路径
- (英语:Hamiltonian path,或Traceable path)。
- 哈密尔顿图的定义:G=(V,E)是一个图,
- 若G中一条通路通过且仅通过每一个顶点一次,
- 称这条通路为哈密尔顿通路。
- 若G中一个圈通过且仅通过每一个顶点一次,称这个圈为哈密尔顿圈。
- 若一个图存在哈密尔顿圈,就称为哈密尔顿图。最后,如果你的时间不是很紧张,并且又想快速的python提高,最重要的是不怕吃苦,建议你可以价位@762459510 ,那个真的很不错,很多人进步都很快,需要你不怕吃苦哦!大家可以去添加上看一下~
举个例子,有一个4*4的地图:
那么哈密顿环就可以是(不唯一):
通过构造哈密顿环,我们就可以很轻松地保证蛇在运动的过程中不会因为撞到自己而