微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

leetcode 79单词搜索使用JavaScript 到目前为止一切顺利!

如何解决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解决方案使用相同的逻辑,并且通过了。我真的不在哪里,我错了,被困了几个小时....

解决方法

到目前为止一切顺利!

  • 我的猜测是,该错误将出现在深度优先搜索rowselse if中。

  • 这会通过,与DFS类似:

else

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。