日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

java實現單詞小游戲

瀏覽:18日期:2022-08-16 10:59:06

本文實例為大家分享了java實現單詞小游戲的具體代碼,供大家參考,具體內容如下

介紹

公司最近有一個競技場項目,里面有一個單詞小游戲。

游戲大概就是隨機生成一個5*5的棋盤,上面有單詞的字母,通過滑動連出正確的單詞。

棋盤生成算法

思路

首先隨機選個一個起點,從這個點開始鋪單詞。

分別選取上下左右四個方向作為下一個字母的擺放位置,不能觸邊也不能走重復路,直到平鋪完所有的單詞。

如果在棋盤能平鋪下單詞的情況下,找不到路徑,就從四個角作為起點,必能找到路徑。

代碼

import java.util.*;/** * @author Wang Guolong * @version 1.0 * @date 2020/7/31 5:50 下午 */public class GenerateWordBoard { private static char[][] board; public static void main(String[] args) { GenerateWordBoard g = new GenerateWordBoard(); g.generateCharBoard('vocabulary', 5, 5); } private void generateCharBoard(String word, int m, int n) { // 單詞為空 直接返回 if (word.isEmpty()) { return; } // 單詞長度大于棋盤 鋪不下 直接返回 if (word.length() > m * n) { return; } // 初始化棋盤 全為* initBoard(m, n); char[] wordChar = word.toCharArray(); // 隨機選取一個位置開始 Random random = new Random(); int randomX = random.nextInt(m); int randomY = random.nextInt(n); // 開始從隨機位置dfs鋪單詞 從index 0 開始 boolean result = generateDfs(board, wordChar, randomX, randomY, 0); // 如果沒有找到路線 那么從四個角開始 必能找到一條路 if (!result) { List<int[]> starts = Arrays.asList(new int[]{0, 0}, new int[]{0, n - 1}, new int[]{m - 1, 0}, new int[]{m - 1, n - 1}); // 隨機四個角的一個 Collections.shuffle(starts); // 初始化棋盤 initBoard(m, n); // dfs鋪單詞 generateDfs(board, wordChar, starts.get(0)[0], starts.get(0)[1], 0); } // 查看結果 for (int i = 0; i < board.length; i++) { for (int j = 0; j < board[0].length; j++) { System.out.print(board[i][j] + ' '); } System.out.println(); } } private void initBoard(int m, int n) { // 初始化 board = new char[m][n]; for (int i = 0; i < board.length; i++) { for (int j = 0; j < board[0].length; j++) { board[i][j] = ’*’; } } } /** * 返回true則為找到一條路 返回false為死路 */ private boolean generateDfs(char[][] board, char[] wordChar, int i, int j, int index) { // 碰到邊 或者碰到已經走過的位置 不能走了 死路 if (i >= board.length || i < 0 || j >= board[0].length || j < 0 || board[i][j] == ’/’) { return false; } // 擺放一個字母 board[i][j] = wordChar[index]; //如果已經達到單詞長度則直接返回 找到一條路 if (index == wordChar.length - 1) { return true; } // 記錄當前矩陣元素 char tmp = board[i][j]; // 修改為/ 表示已經訪問過 board[i][j] = ’/’; // 向上下左右四個方向開啟遞歸 // 查看能走幾個方向 隨機選擇一個 List<int[]> directions = Arrays.asList(new int[]{-1, 0}, new int[]{1, 0}, new int[]{0, -1}, new int[]{0, 1}); Collections.shuffle(directions); boolean res = false; for (int k = 0; k < directions.size(); k++) { int di = i + directions.get(k)[0], dj = j + directions.get(k)[1]; boolean partialRes = generateDfs(board, wordChar, di, dj, index + 1); if (k == 0) { res = partialRes; } else { res = res || partialRes; } // 如果res為true 說明找到一條路 就不再遍歷了 還原后返回true if (res) { // 還原矩陣元素 board[i][j] = tmp; return true; } } // 還原矩陣元素 board[i][j] = ’*’; return false; }}

運行結果

java實現單詞小游戲java實現單詞小游戲java實現單詞小游戲java實現單詞小游戲

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Java
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
日韩1区2区日韩1区2区| 美女毛片一区二区三区四区| 精品中文在线| 免费日韩一区二区三区| 精品伊人久久| 日韩av中文字幕一区二区 | 清纯唯美亚洲综合一区| 亚洲精品精选| 欧美日韩伊人| 国产精品视频一区二区三区四蜜臂 | 麻豆精品蜜桃视频网站| 欧美日韩一区自拍| 国产剧情在线观看一区| 国产精品啊啊啊| 久久天堂av| 红桃视频欧美| 日韩av网站免费在线| 首页欧美精品中文字幕| 国产午夜精品一区在线观看| 视频在线观看91| 亚洲开心激情| 日韩一区二区中文| 日韩影院精彩在线| 日韩专区一卡二卡| 97成人在线| 免费一级欧美片在线观看网站| 国产成年精品| 综合在线一区| 婷婷亚洲精品| 国产亚洲高清一区| 国产一区二区精品福利地址| 日韩一区二区在线免费| 伊人久久亚洲美女图片| 亚洲精品高潮| 欧美三级第一页| 91视频精品| 日本午夜精品久久久久| 欧美日韩一区自拍| 久久麻豆视频| 日韩不卡免费高清视频| 尹人成人综合网| 日本中文字幕不卡| 不卡在线一区| 欧美综合二区| 亚洲不卡系列| 国产精品社区| 在线精品亚洲欧美日韩国产| 亚洲成人国产| 国产精品美女在线观看直播| 国产亚洲精品美女久久| 成人精品国产亚洲| 狠狠干成人综合网| 国产欧美91| 99精品电影| 亚洲欧美久久精品| 福利精品一区| 蜜桃久久av| 国产精品v亚洲精品v日韩精品| 亚洲不卡系列| 国产精品主播在线观看| 中文另类视频| 日韩和欧美的一区| 久久久777| 日韩二区三区四区| 亚洲女同av| 综合色一区二区| 日韩和的一区二在线| 日本精品久久| 色综合www| 日本欧美大码aⅴ在线播放| 日韩在线二区| 69堂精品视频在线播放| 久久免费黄色| 国产情侣一区| 9国产精品视频| 精品一区二区三区在线观看视频| 99在线|亚洲一区二区| 激情久久99| 日韩国产欧美三级| 日韩av首页| 国产精品玖玖玖在线资源| 日韩一区二区免费看| а√天堂中文在线资源8| 日韩精品欧美精品| 欧美日韩国产欧| 欧美韩日一区| 国产剧情一区| 亚洲久久视频| 一区视频在线| 美女福利一区二区三区| 久久激情av| 蜜桃免费网站一区二区三区| 丝袜美腿一区| 精品久久电影| 天堂久久av| 午夜精品一区二区三区国产| 成人污污视频| 国产精品一站二站| 亚洲制服欧美另类| 激情欧美一区二区三区| 亚洲高清激情| 久久久久97| 国产精品一国产精品k频道56| 蜜桃av一区| 尤物网精品视频| 播放一区二区| 欧美国产美女| 国产一区二区三区精品在线观看| 国产精品日韩精品在线播放 | 91视频一区| 国产精品中文字幕制服诱惑| 免费一级片91| 在线亚洲免费| 午夜久久久久| 国产综合精品一区| 美女一区网站| sm久久捆绑调教精品一区| 精品国产中文字幕第一页| 国产精品羞羞答答在线观看| 日韩av影院| 日韩国产欧美在线播放| 日韩一区精品| 日日夜夜免费精品| 尹人成人综合网| 欧美日韩免费观看一区=区三区| 久久精品在线| 91精品蜜臀一区二区三区在线| 日韩在线综合| 色婷婷精品视频| 久久激情婷婷| 免费精品国产的网站免费观看| 久久国产日本精品| 极品裸体白嫩激情啪啪国产精品| 91tv亚洲精品香蕉国产一区| 久久精品欧美一区| 欧美日韩黑人| 另类av一区二区| 亚洲香蕉视频| 中文视频一区| 日本aⅴ精品一区二区三区| 欧美中文高清| 国产乱码精品| 福利在线一区| 国产精品久久久久av电视剧| 99久久视频| 亚洲欧美日韩精品一区二区| 亚洲影视一区| 欧美天堂在线| 精品久久电影| 久久精品导航| 亚洲欧美不卡| 天堂va在线高清一区| 国产日本精品| 麻豆视频久久| 桃色一区二区| 亚洲欧美日本视频在线观看| 在线观看亚洲精品福利片| 日韩av中文字幕一区| 国产精品日韩精品中文字幕| 国产成人精选| 亚洲五月婷婷| 亚洲精品高潮| 麻豆91精品视频| 久久久9色精品国产一区二区三区| 91久久久精品国产| 亚洲图片久久| 麻豆一区二区三区| 99精品网站| 在线亚洲一区| 欧美日本精品| 最近高清中文在线字幕在线观看1| 欧美日韩国产亚洲一区| 国产欧美一区二区精品久久久 | 99精品美女| 亚洲人www| 国内精品麻豆美女在线播放视频| 婷婷亚洲五月| 国产精品任我爽爆在线播放 | 亚洲无线观看| 国产精品国产三级国产在线观看| 国产一区日韩一区| 日韩中文字幕91| 蜜桃久久久久| 婷婷综合五月| 日本亚洲不卡| 天堂中文av在线资源库| 午夜亚洲福利| 精品在线网站观看| 国产真实久久| 日韩精品一级中文字幕精品视频免费观看 | 综合激情一区| 97精品中文字幕| 91精品国产乱码久久久久久久 | 在线亚洲激情| 日本v片在线高清不卡在线观看| 国产美女久久| 精品三级在线| 丝袜脚交一区二区| 久久国产乱子精品免费女| 国产一区二区三区天码|