【发布时间】:2014-10-08 21:33:01
【问题描述】:
我正在尝试以垂直模式从左上角到右下角搜索我的多维数组,它是一个 6x8 网格,但我无法弄清楚我的代码有什么问题。谁能告诉我我做错了什么?
public static String findTopToBottom (char[][]board, String word) {
char[] letters = word.toCharArray();
for (int i = 0; i <= board[i].length; i++) {
for (int j = 0; j <= board.length; j++) {
boolean found = true;
for (int k = 0; k < letters.length; k++) {
if ((i + k > board[j].length) || (letters[k] != board[j][i+k])) {
found = false;
break;
}
}
if (found) {
return "String " + word + " found in row=" + i + " col=" +j;
}
}
}
return "String " + word + " not found";
}
【问题讨论】:
-
你能描述一下它是怎么错的吗?
-
它根本不工作,我得到一个索引越界错误。
-
在你的第二个循环中,
board.length可能不是你想要的,因为它是一个二维数组。 -
@JesseJ 不,那是错误的,因为他故意试图以不寻常的顺序遍历数组,我认为:先向下每一列,而不是先遍历每一行。
标签: java search multidimensional-array traversal