亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Android的五子棋游戲的算法分析

        2017-09-10 09:01:31鄒元杰
        商情 2017年31期
        關(guān)鍵詞:五子棋算法

        鄒元杰

        【摘要】五子棋起源于中國(guó)古代的傳統(tǒng)黑白棋種之一,它不僅能增強(qiáng)思維能力 提高智力,而且富含哲理,有助于修身養(yǎng)性。本文主要闡述以eclipse為開發(fā)工具, 基于智能手機(jī)Android設(shè)計(jì)一個(gè)五子棋游戲,并對(duì)其中相關(guān)算法進(jìn)行研究。

        【關(guān)鍵詞】Android 五子棋 算法

        一、Android開發(fā)環(huán)境介紹

        Android的上層應(yīng)用程序是使用的Java語(yǔ)言開發(fā),同時(shí)還需要基于Dalvik虛擬機(jī)。所以,Google公司推薦使用主流的Java去繼承開發(fā)環(huán)境Eclipse。不過只有Eclipse還是遠(yuǎn)遠(yuǎn)不夠的,因?yàn)槭鞘褂肑ava語(yǔ)言進(jìn)行開發(fā),所以這部分還應(yīng)該有由SUN公司提供的Java SDK(其中包括JRE:Java Runtime Environment)。此外,Android的應(yīng)用程序開發(fā)和Java開發(fā)有較大區(qū)別的,所以還需要有Google提供的Android SDK。在Eclipse上安裝一個(gè)AVD的虛擬機(jī)也是必要的。同時(shí),還需要在Eclipse安裝ADT,使得在有更新程序的時(shí)候可以能夠?yàn)锳ndroid開發(fā)提供開發(fā)工具的升級(jí)或者變更,也是Eclipse下開發(fā)工具的升級(jí)下載的工具。

        二、Android應(yīng)用程序組件

        Android的一個(gè)主要特點(diǎn)是,一個(gè)應(yīng)用程序可以利用其他應(yīng)用程序的元素(假設(shè)這些應(yīng)用程序允許的話)。例如,如果你的應(yīng)用程序需要顯示一個(gè)圖像的滾動(dòng)列表,且其他應(yīng)用程序已經(jīng)開發(fā)了一個(gè)合適的滾動(dòng)條并可以提供給別的應(yīng)用程序用,你可以調(diào)用這個(gè)滾動(dòng)條來工作,而不用自己開發(fā)一個(gè)。你的應(yīng)用程序不用并入其他應(yīng)用程序的代碼或鏈接到它。相反,當(dāng)需求產(chǎn)生時(shí)它只是啟動(dòng)其他應(yīng)用程序塊。

        對(duì)于這個(gè)工作,當(dāng)應(yīng)用程序的任何部分被請(qǐng)求時(shí),系統(tǒng)必須能夠啟動(dòng)一個(gè)應(yīng)用程序的進(jìn)程,并實(shí)例化該部分的Java對(duì)象。因此,不像其他大多數(shù)系統(tǒng)的應(yīng)用程序,Android應(yīng)用程序沒有一個(gè)單一的入口點(diǎn)(例如,沒有main()函數(shù))。相反,系統(tǒng)能夠?qū)嵗瓦\(yùn)行需要幾個(gè)必要的組件。有四種類型的組件:活動(dòng)(Activities)、服務(wù)(Services)、廣播接收者(Broadcast receivers)、內(nèi)容提供者(Content providers)。

        然而,并不是所有的應(yīng)用程序都必須包含上面的四個(gè)部分,你的應(yīng)用程序可以由上面的一個(gè)或幾個(gè)來組建。當(dāng)你決定使用以上哪些組件來構(gòu)建Android應(yīng)用程序時(shí),你應(yīng)該將它們列在AndroidManifest.xml文件中,在這個(gè)文件中你可以聲明應(yīng)用程序組件以及它們的特性和要求。

        三、設(shè)計(jì)思路

        此游戲主要是采用Android的View框架編寫,部分框架運(yùn)用Android中的其他組件。主要運(yùn)用了算法來實(shí)現(xiàn)對(duì)棋局的分析,棋盤輸贏的判定。

        UI方面:此游戲當(dāng)進(jìn)入游戲的界面時(shí),調(diào)用的是一個(gè)用相對(duì)布局-AbsoluteLayout的XML布局文件。其中包括了一個(gè)IamgeView和4個(gè)Button.分別實(shí)現(xiàn)了不同的功能。第一個(gè)Button是進(jìn)入新游戲,點(diǎn)擊按鈕進(jìn)入新游戲,來選擇對(duì)手。第二個(gè)Button是幫助,用了一個(gè)TextView來說明怎樣來進(jìn)行游戲。第三個(gè)Button是游戲的關(guān)于,用了一個(gè)AlertDialog來介紹了一下游戲的這個(gè)游戲的好處。第四個(gè)Button是游戲的退出按鈕。在游戲中,用畫線來布滿了整個(gè)的手機(jī)屏幕,在上面用了TextView來進(jìn)行了文字的說明和提示。

        四、相關(guān)的算法研究

        關(guān)于盤面情況的表示,首先得到屏幕的大小,然后根據(jù)所畫棋子的大小來確定下一條棋盤的畫線。產(chǎn)生棋盤上所有的線。分析規(guī)則中,判斷各個(gè)四個(gè)方向的棋子:在某個(gè)方向(八個(gè)中的一個(gè))可下多少棋子,判斷是否還能下到滿5個(gè)棋子,最核心的應(yīng)該是勝負(fù)判斷,實(shí)際上,是根據(jù)當(dāng)前最后一個(gè)落子的情況來判斷勝負(fù)的。需要從四個(gè)位置判斷,以該子為出發(fā)點(diǎn)的水平,豎直和兩條分別為 45度角和135度角的線,目的是看在這四個(gè)方向是否最后落子的一方構(gòu)成連續(xù)五個(gè)的棋子,如果是的話,就表示該盤棋局已經(jīng)分出勝負(fù)。部分核心算法實(shí)現(xiàn)如下:

        開始分析,掃描所有空白點(diǎn),形成第一次分析結(jié)果;

        第二次分析,分析第一次形成的結(jié)果,第一次分析結(jié)果會(huì)把一步棋在四個(gè)方向上可形成的結(jié)果生成最多四個(gè)FirstAnalysisResult對(duì)象(敵我各四);

        第三次分析,雙方都不可以制造活4,找雙活3棋子,不行就找半活4,再不行就找單活3,雙活2;endprint

        猜你喜歡
        五子棋算法
        Sim Sim
        基于MapReduce的改進(jìn)Eclat算法
        Travellng thg World Full—time for Rree
        進(jìn)位加法的兩種算法
        一種改進(jìn)的整周模糊度去相關(guān)算法
        90后羅運(yùn)生:五子棋是我生命的一部分
        金色年華(2016年8期)2016-02-28 01:40:31
        財(cái)政部長(zhǎng)吳波的“五子棋局”
        夏日五子棋
        娜娜麻豆国产电影| 日韩性感av一区二区三区| 一区二区三区乱码专区| 午夜成人理论福利片| 日本又黄又爽gif动态图| 一区五码在线| 白色月光免费观看完整版| 国产精品久久国产精品99 gif| 无遮挡又黄又刺激又爽的视频| 国产在线视欧美亚综合| av有码在线一区二区三区| 国产精品亚洲精品日韩已方| 青青草视频免费观看| 成人无码区免费AⅤ片WWW| 国产白浆一区二区三区佳柔| 一本久道综合色婷婷五月| 蜜臀aⅴ国产精品久久久国产老师 国产精品久久婷婷六月丁香 | 亚洲欧美日韩一区在线观看| 阴唇两边有点白是怎么回事 | 一级一片内射视频网址| 国产精品av在线| 亚洲国产欧美在线成人| av永久天堂一区二区三区蜜桃 | 激情人妻另类人妻伦| 一二三四在线观看免费视频| 国产人成亚洲第一网站在线播放 | 亚洲处破女av日韩精品中出| 影音先锋男人站| 国产福利小视频在线观看| 久久精品伊人久久精品伊人| 国产亚洲精品成人aa片新蒲金| 久久久久国色av∨免费看| 亚洲av色香蕉一区二区三区蜜桃| 亚洲一区二区三区蜜桃| 久久夜色精品国产| 国产精品亚洲国产| 91久久国产香蕉熟女线看| 色avav色av爱avav亚洲色拍| 无码片久久久天堂中文字幕| 中文字幕人妻av四季| 樱桃视频影院在线播放|