如何解决leetcode 79单词搜索使用JavaScript 到目前为止一切顺利!
我尝试使用JavaScript解决leetcode 79,但是此测试用例失败:
[[“ A”,“ B”,“ C”,“ E”],[“ S”,“ F”,“ C”,“ S”],[“ A”,“ D”,“ E“,” E“]] “ ABCB”
我的代码如下:
/**
* @param {character[][]} board
* @param {string} word
* @return {boolean}
*/
var exist = function(board,word) {
let row = board.length,col = board[0].length;
let dfs = (word,r,c) =>{
if (!word.length){
return true;
}
else if (r>=0 && r<row && c>=0 && c<col && word[0] === board[r][c]){
let tmp = board[r][c];
board[r][c] = '#';
console.log(word[0],board,c)
if (dfs(word.substr(1),r+1,c) || dfs(word.substr(1),r-1,c+1) || word.substr(1),c-1){
return true;
}
board[r][c] = tmp;
return false;
}
else{
return false;
}
}
for (let r=0; r<row; r++){
for (let c=0; c<col; c++){
if (dfs(word,c)){
return true;
}
}
}
return false;
};
我的Python解决方案使用相同的逻辑,并且通过了。我真的不在哪里,我错了,被困了几个小时....
解决方法
到目前为止一切顺利!
-
我的猜测是,该错误将出现在深度优先搜索
rows
和else if
中。 -
这会通过,与DFS类似:
else
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。