leetcode-79. 单词搜索(剑指offer矩阵中的路径)
时间:2021-07-17
本文章向大家介绍leetcode-79. 单词搜索(剑指offer矩阵中的路径),主要包括leetcode-79. 单词搜索(剑指offer矩阵中的路径)使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
下面的dfs在剑指offer上没毛病,在leetcode上超时
class Solution { public: bool exist(vector<vector<char>>& board, string word) { int m = board.size(); int n = board[0].size(); for(int i = 0; i < m; i++) for(int j = 0; j < n; j++){ if(board[i][j]==word[0]){ vector<vector<bool>> visited(m, vector<bool>(n,false)); if(dfs(board,visited,word,i,j,0)) return true; } } return false; } bool dfs(vector<vector<char>> board, vector<vector<bool>> visited,string word,int i, int j,int index){ int m = board.size(); int n = board[0].size(); if(i<0||i>=m||j<0||j>=n||visited[i][j]||board[i][j]!=word[index]) return false; visited[i][j] = true; if(index==word.size()-1) return true; if(dfs(board,visited,word,i-1,j,index+1)||dfs(board,visited,word,i+1,j,index+1)||dfs(board,visited,word,i,j-1,index+1)||dfs(board,visited,word,i,j+1,index+1)) return true; visited[i][j] = false; // 复原 return false; } };
原文地址:https://www.cnblogs.com/ymec/p/15024230.html
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法