Leetcode Word Search
来源:互联网 发布:php抓取访客手机号码 编辑:程序博客网 时间:2024/06/10 14:46
Given a 2D board and a word, find if the word exists in the grid.
The word can be constructed from letters of sequentially adjacent cell, where "adjacent" cells are those horizontally or vertically neighboring. The same letter cell may not be used more than once.
For example,
Given board =
[ ["ABCE"], ["SFCS"], ["ADEE"]]word =
"ABCCED"
, -> returns true
,word =
"SEE"
, -> returns true
,word = "ABCB"
, -> returns false
.
Solve the problem on leetcode
class Solution {
public:
bool exist(vector<vector<char>>& board, string word)
{
//遍历二维矩阵
//求行
//求列
int row=board.size();//row
int col=board[0].size();//col
if(row<=0||col<=0) return false;
if(word.size()==0) return true;
//要查找的字符第一个char
char fch=word.at(0);
//在数组中寻找第一个字符
for(int i=0;i<row;i++)
for(int j=0;j<col;j++)
{
if(board[i][j]==fch)
{ board[i][j]=' ';
if(dfs(board,word.substr(1),i,j)) return true;
board[i][j]=fch;
}
}
return false;
}
bool dfs(vector<vector<char>> &board,string word,int a,int b)
{
int dir[4][2]={{-1,0},{1,0},{0,-1},{0,1}};
int row=board.size();//row
int col=board[0].size();//col
if(word.size()==0) return true;
for(int i=0;i<4;i++)
{
int x=a+dir[i][0];
int y=b+dir[i][1];
if(x>=0&&x<row&&y>=0&&y<col&&board[x][y]==word.at(0))
//得先判断x,y是否越界;
{
board[x][y]=' ';
if(dfs(board,word.substr(1),x,y)) return true;
board[x][y]=word.at(0);
}
}
return false;
}
};
- LeetCode: Word Search
- [Leetcode] Word Search
- LeetCode : Word Search
- Leetcode: Word Search
- [LeetCode] Word Search
- leetcode 56: Word Search
- Leetcode 79 Word Search
- [leetcode ] word search
- [Leetcode] Word Search
- [LeetCode]Word Search
- Leetcode Word Search
- [leetcode]word search
- [leetcode] Word Search
- LeetCode-Word Search
- [LeetCode] Word Search
- LeetCode - Word Search
- leetcode word search
- LeetCode:Word Search
- 响应式布局 BFC
- JAVA面向对象-----内部类的概述
- CodeForces 474C - Captain Marmot
- 理解Java垃圾回收
- gdb调试core时打印出当时变量的内容------有时可以主动制造core来看变量值
- Leetcode Word Search
- 欢迎使用CSDN-markdown编辑器
- Oracle11g数据库win8.1系统安装配置图文教程
- c++设计模式之桥接模式
- TTL & OS
- poj 1611 并查集
- 彻底弄懂css中单位px和em,rem的区别
- hdu 5750 数学+预处理
- ArcEngine错误提示