亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

Android 實戰項目之五子棋 附源碼

系統 2983 0

五子棋游戲五子連珠算法實現

Android 實戰項目之五子棋 附源碼

1.游戲規則

五子棋是兩個人之間進行的競技活動,黑方白方規則規則相同,黑棋必須先行, 五連子的方向為橫、豎、斜,如黑白色任一方先五子連一線則算勝出。

2. 五子連珠算法

在 9 X 9 (這里舉例子實際棋盤可以任意大小) 的游戲棋盤中 我們可以把它想象成一個二維數組,黑方下棋子后填充當前點的數組的值1,白方下棋子后填充當點的數組的值2,沒有下棋子的點在數組中值為0, 黑白雙方每走一步 則實際上在給這個二維數組賦值。 所以我們根據這個二維數組的值就可以計算出五子連珠,也可以繪制出棋盤上的黑白棋子。

玩家點擊屏幕后拿到一個屏幕的 x y 坐標 然后除以棋盤每一格的寬高 就可以得到在二維數組中的索引根據X Y 這 兩個索引就可以知道棋子下在了這個二維數組中的那里。

現在筆者帶大家分析一下五子連珠的算法, 首先要想五顆棋子連成一線必定有8種可能 接下來我們分析一下有那八中可能.

第一種:如圖所示 X軸橫向 其中橫向四顆棋子已經連成一線 左右兩邊任意下一顆棋子便五子連珠。可以用一個for循環遍歷當前X點索引 起始點為 X -4 結束點為X + 4 一共便利 9 次 如果其中5顆棋子連續則五子連珠 否則只要有一個沒連上 直接break;

X軸向

第二種:如圖所示 X軸橫向 其中左右兩邊若干棋子但是都未滿足五子連珠 但是如果將中間連上后遍滿足

所以在寫算法的時候必需以當前棋子索引 前后都要便利5遍 才能確定當前棋子后是否可以五子連珠。算法同上

X軸向

第三種:如圖所示 Y軸縱向 遍歷的時候須要從 Y - 4 到 Y + 4


Y軸向

第四種:如圖所示 Y軸縱向 同理X軸

Y軸向

第五種:如圖所示 遍歷的時候須要從(X -4) (Y- 4) 到 (X +4) (Y+4)

X軸向

第六種:如圖所示算法同上

X軸向

第七種:如圖所示 遍歷的時候須要從(X + 4) (Y+ 4) 到 (X- 4) (Y + 4)

XY軸

第八種:如圖所示算法同上

X軸向

這樣五子連珠的算法就介紹完了 下面附上我的源碼下載地址目前我沒有加上AI 有興趣的朋友我們可以一起研究研究。

源碼下載地址: http://download.csdn.net/source/3395573

Android 實戰項目之五子棋 附源碼


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 97精品久久天干天天蜜 | 7777精品久久久大香线蕉 | 夜夜久久 | 国产一级精品视频 | 日本一级α一片免费视频 | 国产伦理久久精品久久久久 | 国产一级视频播放 | 日韩欧美亚洲精品 | 欧美成人天天综合天天在线 | 91正在播放极品白嫩在线观看 | 亚洲欧美精品天堂久久综合一区 | 九九精品免费视频 | 色偷偷亚洲精品一区二区 | 玖热在线| 亚洲精品国产一区二区三区四区 | 欧美一级高清毛片aaa | 99久久99这里只有免费费精品 | 久久久久久久一线毛片 | 免费又爽又黄禁片视频在线播放 | 一级毛片免费视频日本 | 老司机精品视频个人在观看 | ww久久| 久久综合综合久久97色 | 欧美精品一区二区三区视频 | 国产一区二区亚洲精品天堂 | 在线播放日本爽快片 | 中文字幕免费在线视频 | 国产尤物精品视频 | 香蕉精品视频在线观看入口 | 亚洲成a v人片在线观看 | 亚洲一级片在线观看 | 老子影院午夜伦手机不卡6080 | 欧美一区二区免费 | 在线视频a | 国产欧美成人一区二区三区 | 手机看片福利视频 | 桃花综合 | 久久永久免费中文字幕 | 九九网站 | 亚洲国产成人综合精品2020 | 国产真实乱子伦精品 |