剑指 Offer 12. 矩阵中的路径
2021/5/6 11:00:57
本文主要是介绍剑指 Offer 12. 矩阵中的路径,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
public boolean exist(char[][] board, String word) { if (board == null || board.length == 0 || board[0].length == 0) { return false; } char[] chars = word.toCharArray(); boolean[][] visited = new boolean[board.length][board[0].length]; for (int i = 0; i < board.length; i++) { for (int j = 0; j < board[0].length; j++) { // 从 (0, 0) 点开始进行 dfs 操作,不断地去找, // 如果以 (0, 0) 点没有对应的路径的话,那么就从 (0, 1) 点开始去找 if (dfs(board, chars, visited, i, j, 0)) { return true; } } } return false; } private boolean dfs(char[][] board, char[] chars, boolean[][] visited, int i, int j, int start) { if (i < 0 || i >= board.length || j < 0 || j >= board[0].length || chars[start] != board[i][j] || visited[i][j]) { return false; } if (start == chars.length - 1) { return true; } visited[i][j] = true; boolean ans = false; ans = dfs(board, chars, visited, i + 1, j, start + 1) || dfs(board, chars, visited, i - 1, j, start + 1) || dfs(board, chars, visited, i, j + 1, start + 1) || dfs(board, chars, visited, i, j - 1, start + 1); visited[i][j] = false; return ans; }
这篇关于剑指 Offer 12. 矩阵中的路径的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-06-26结对编程到底难不难?答案在这里
- 2024-06-19《2023版Java工程师》课程升级公告
- 2024-06-15matplotlib作图不显示3D图,怎么办?
- 2024-06-1503-Loki 日志监控
- 2024-06-1504-让LLM理解知识 -Prompt
- 2024-06-05做软件测试需要懂代码吗?
- 2024-06-0514-ShardingSphere的分布式主键实现
- 2024-06-03为什么以及如何要进行架构设计权衡?
- 2024-05-31全网首发第二弹!软考2024年5月《软件设计师》真题+解析+答案!(11-20题)
- 2024-05-31全网首发!软考2024年5月《软件设计师》真题+解析+答案!(21-30题)