大家好,又见面了,我是你们的朋友全栈君。五子棋之人机对战思路:
1,棋盘与棋子的实现
2,玩家下完棋后,计算机要根据当前玩家所下的棋子找出最佳下棋点
3,输赢的判断
之前已经把人人对战的大概方法实现了,接下要实现的是人机的对战。我的思路如下(当然只是思路哈~还没具体实现呢):
其实人机对战就是就在我们下完一步起后,通过电脑分析下一步该走哪,对此做出判断并在最佳的位置上出棋。
1,首先需要定义权值,我做的是防守的方式。
通常当我下玩一步棋走后,电脑会分别对我周围的八个方向(上、下、左、右、左斜上、右斜上、左斜下、右斜下)进行遍历,判断当前的局势。
具体权值定义如下:
活一连:10 死一连:5
活二连:20 死二连:15
活三连:100 死三连:18
活四连和死四连:100
电脑根据权值数组中的值,找到其中的最大值,然后在相应的位置上走棋。
额。。。这就是我的思路。~~~~~ :oops:
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/149894.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...