classSolution{public:boolexist(vector<vector<char>>& board, string word){
rows = board.size();// 行
cols = board[0].size();// 列for(int i =0; i < rows; i++){for(int j =0; j < cols; j++){if(dfs(board, word, i, j,0))returntrue;}}returnfalse;}private:int rows, cols;booldfs(vector<vector<char>>& board, string word,int i,int j,int k){if(i >= rows || i <0|| j >= cols || j <0|| board[i][j]!= word[k])returnfalse;// 判断边界条件 board[i][j]!=word[k] 含义:找的这个位置不是可行路径if(k == word.size()-1)returntrue;// 全部都找到了
board[i][j]='\0';bool res =dfs(board, word, i +1, j, k +1)||dfs(board, word, i -1, j, k +1)||dfs(board, word, i, j +1, k +1)||dfs(board, word, i , j -1, k +1);
board[i][j]= word[k];return res;}};
作者:jyd
链接:https://leetcode-cn.com/problems/ju-zhen-zhong-de-lu-jing-lcof/solution/mian-shi-ti-12-ju-zhen-zhong-de-lu-jing-shen-du-yo/
来源:力扣(LeetCode)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。