LeetCode-Word Search
2013-08-20 10:20
267 查看
class Solution { public: bool exist(vector<vector<char> > &board, string word) { // Start typing your C/C++ solution below // DO NOT write int main() function if (word == "") { return true; } else if (board.size() == 0 || board[0].size() == 0) { return false; } vector<vector<bool> > used(board.size(), vector<bool>(board[0].size(), false)); for (int i = 0; i < board.size(); ++i) { for (int j = 0; j < board[i].size(); ++j) { if (existCore(board, word, 0, i, j, used)) { return true; } } } return false; } bool existCore(vector<vector<char> > &board, string word, int index, int row, int col, vector<vector<bool> > &used) { if (board[row][col] == word[index]) { used[row][col] = true; ++index; if (index == word.size()) { return true; } if (row > 0 && !used[row - 1][col] && existCore(board, word, index, row - 1, col, used)) { return true; } if (row < board.size() - 1 && !used[row + 1][col] && existCore(board, word, index, row + 1, col, used)) { return true; } if (col > 0 && !used[row][col - 1] && existCore(board, word, index, row, col - 1, used)) { return true; } if (col < board[0].size() - 1 && !used[row][col + 1] && existCore(board, word, index, row, col + 1, used)) { return true; } used[row][col] = false; } return false; } };
相关文章推荐
- [leetcode] Word Search
- LeetCode解题笔记79 Word Search
- LeetCode - Word Search
- 【LeetCode-面试算法经典-Java实现】【079-Word Search(单词搜索)】
- LeetCode上面一道算法题目:79. Word Search
- Leetcode 之 Word Search
- 【leetcode题解】2 - Word Search
- Leetcode79 Word Search
- (Java) LeetCode 79. Word Search —— 单词搜索
- Leetcode: Word Search
- [Leetcode]Word Search
- [LeetCode] Word Search
- [LeetCode124]Word Search
- [LeetCode] Word Search
- LeetCode(79) Word Search
- [Leetcode]@python 79. Word Search
- LeetCode: Word Search
- leetcode_079 Word Search
- [leetcode]Word Search
- leetcode-Word Search