這只是一個簡單的JAVAscript和HTML5小程序,沒有實現人機對戰。
五子棋棋盤落子點對應的二維數組。數組的元素對應落子點。例如數組元素值為0表示該元素對應的落子點沒有棋子,數組元素值為1表示該元素對應的落子點有白棋子,數組元素值為2表示該元素對應的落子點有黑棋子;
判斷五子棋贏棋的演算法是透過對五子棋棋盤落子點對應的二維數組的操作來實現的。
判斷五子棋贏棋演算法
下邊的函數可以實現判斷五子棋贏棋的演算法,也可以依照教材中對應的演算法來實現。
其中函數的參數xx.yy為數組下標,chess數組實現五子棋盤落子點的資料結構映射。
演算法的思想方法是:以當前落子點對應的下標為基點,向其周圍8個方向進行搜索,如果有同色子連五子,返回1,或2,否則返回0。返回1代表白棋勝,返回2代表黑棋方勝。返回0代表沒有發生贏棋資料結構狀態。