h*********o 发帖数: 230 | 1 代码如下:
public boolean exist(char[][] board, String word) {
// Start typing your Java solution below
// DO NOT write main() function
for(int i=0;i
for(int j=0;j
if(board[i][j]==word.charAt(0)){
return find(board, word, i,j,0);
}
}
}
return false;
}
public boolean find(char[][] board, String word,int i,int j, int index){
if(index==word.length())
return true;
if(i=0&&j>=0&&board[i][j]==word
.charAt(index)){
board[i][j]='*';
index++;
return find(board, word, i+1,j,index)||
find(board, word, i-1,j,index)||
find(board, word, i,j+1,index)||
find(board, word, i,j-1,index);
}
return false;
} | h*********o 发帖数: 230 | 2 找到问题了,呵呵 谢谢。不能直接返回,true 才返回,否则应该恢复原来的board。
【在 h*********o 的大作中提到】 : 代码如下: : public boolean exist(char[][] board, String word) { : // Start typing your Java solution below : // DO NOT write main() function : for(int i=0;i: for(int j=0;j: if(board[i][j]==word.charAt(0)){ : return find(board, word, i,j,0); : : }
|
|