이 기사의 예는 단어 검색 미로 게임을 달성하기위한 Java를 설명합니다. 참조를 위해 모든 사람을 위해 공유하십시오. 특정 분석은 다음과 같습니다.
잡지에서는 종종 미니 게임이 단어를 찾는 것을 볼 수 있습니다. 이 컴퓨터는 처리하기에 매우 편리하지만 알고리즘의 품질은 중요합니다. 무차별 인력 알고리즘으로 구현되면 시간을 상상할 수 없기 때문입니다.
이것은 데이터 구조의 실현이며 문제는 Java 언어 설명의 실현 실현을 해결합니다.
전체 코드는 다음과 같습니다. 주석은 매우 명확합니다.
Java.io.filereader import java.ioexcept; ** * 단어 검색 미로 * * * */public class wordsearch {/** * 생성자에서 두 개의 입력 스트림, 단어 입력 스트림 및 입력 스트림을 구성 * * */public wordsearch () IoException {PuzzLestrea M = OpenFile (FORM PATH를 입력하십시오. } /*** @return 매칭 총 일치하는 단어가 얼마나 많은지* 각 위치에서 8 방향에서 검색하여 증분 수율을 나타내려면 예를 들어 : rd = -1, 상단 선* CD가 증분을 나타내는 것을 나타냅니다. 예를 들어 열에 예를 들어 : CD = -1. 왼쪽 단계* so rd = 1, cd = 0은 South* rd = -1, cd = 0은 북쪽을 의미합니다. matches = 0; (int r = 0; r <rows; r ++) for (int c = 0; c <열; c ++). ) for (int cd = -1; cd <= 1; cd ++) if (rd! = 0 || cd! = 0) matches+= solvedirection (r, c, rd, cd); *** 지정된 좌표에서 주어진 방향을 검색하는 데 따라 주어진 방향에 따라 *@return 매치 수치 */ private int solvediprection (int baserow, int basecol, int rowdelta) {String charseveren ce = " ; clumns; +rowdelta, j += coldelta) {charSequence [i] [J]; -Border는 위험하고 마지막 단어가 일치하는 경우 인덱스를 반환합니다. searchResult] .StartSwith (charSequence) 브레이크; Basecol + "column" + i + " + j);} return nummatches;} /*** 먼저 배열을 설명하십시오 .BinarySearch (Object [], Object)* 이진 검색 알고리즘을 사용하여 지정된 배열을 검색하여 지정된 것을 얻습니다. 물체. 이 호출 전에 *는 배열 요소의 자연 순서에 따라 배열별로 정렬해야합니다 (위의 종류 (Object [] 메소드) * 배열의 정렬이 없으면 결과는 불분명합니다. 서로 비교 (예 : 문자열 및 정수) *배열 요소의 자연 순서에 따라 배열을 정렬 할 수 없으므로 결과는 명확하지 않습니다. (string [] a, String x) {int idx = arrays.binarysearch (a, x); 입력 스트림을 가져옵니다* / private bufferedReader OpenFile (String Message) {String filename = "" "" "" "" "" "" "" "" "System.out.println (message +": "); try {filename = in.readline (); if (filame == null) exit (0); FileIn == NULL.OUT.PRINTLN ( " + Filename"; PuzzLestream.Readline () == NULL은 "퍼즐 파일의 라인 없음"; = null) {if (oneline.length () !! stem.err. println ( "퍼즐은 직사각형이 아님; 직사각형이 아닙니다. char [rows] [열]; () IoException {list <string> words = new arraylist <string> (); 0) {System.err.println ( "이번에는 사전 순서대로 정렬되지 않음"); Words.size ()]; .OU T.Println (IO 오류 : "); [] TheWords; private bufferedReader puzzlestream;이 기사는 모든 사람의 Java 프로그램 설계에 도움이되기를 바랍니다.