-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathWordOnBoardFinder.java
55 lines (52 loc) · 1.98 KB
/
WordOnBoardFinder.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
/**
* Copyright (C) 2002 Michael Green <[email protected]>
*
* Copyright (C) 2002 Paul Kube <[email protected]>
*
* Copyright (C) 2005 Owen Astrachan <[email protected]>
*
* Copyright (C) 2011 Hoa Long Tam <[email protected]> and Armin Samii
*
* This file is part of CS Boggle.
*
* CS Boggle is free software: you can redistribute it and/or modify it under
* the terms of the GNU General Public License as published by the Free Software
* Foundation, either version 3 of the License, or (at your option) any later
* version.
*
* CS Boggle is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along with
* CS boggle. If not, see <http://www.gnu.org/licenses/>.
*/
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class WordOnBoardFinder {
/**
* Return a list of cells on the given board such that the i-th element of the
* list corresponds to the i-th character of the string as found on the board.
* Returns an empty list if the word cannot be found on the board.
*
* @param board
* is searched for the given word
* @param word
* is being searched for on the board
* @return list of cells on the supplied board that correspond to the word, an
* empty list should be returned if the word cannot be found on the
* board
*/
public List<BoardCell> cellsForWord(BoggleBoard board, String word) {
List<BoardCell> list = new ArrayList<BoardCell>();
for (int r = 0; r < board.size(); r++) {
for (int c = 0; c < board.size(); c++) {
/* TODO: Check if the word can be found by starting at (r, c) Hint:
* Consider using a helper method that uses recursion. */
}
}
return list;
}
}