题目

链接:https://leetcode-cn.com/problems/ju-zhen-zhong-de-lu-jing-lcof/

题解

典型的矩阵矩阵搜索问题
参考题解: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/

class _12TJ2{public boolean exist(char[][] board, String word){// 转化为字符数组便于判断char[] chars = word.toCharArray();// 获取行数int n = board.length;// 获取列数int m = board[0].length;// 从每个节点开始穷举for (int i = 0; i < n; i++) {for (int j = 0; j < m; j++) {//  只要存在路径上的字符串起来与目标字符串相等,就返回if (dfs(board,chars,n,m,i,j,0)){return true;}}}// 遍历完还是没有匹配到,返回falsereturn false;}public boolean dfs(char[][] board, char[] chars,int n,int m,int i,int j,int k){// 边界条件加是否与当前字符匹配,不匹配直接返回falseif (i>=n || i<0 || j>=m || j<0 || board[i][j] != chars[k]) {return false;}// 当k达到字符串的最后一个字符也匹配时说明匹配成功if (k == chars.length-1){return true;}// 将访问过的字符节点board[i][j] = '\0';boolean res = dfs(board,chars,n,m,i+1,j,k+1) || dfs(board,chars,n,m,i-1,j,k+1) ||dfs(board,chars,n,m,i,j+1,k+1) || dfs(board,chars,n,m,i,j-1,k+1);// 回溯board[i][j] = chars[k];return res;}}

(day06 dfs+剪枝)剑指 Offer 12. 矩阵中的路径相关推荐

  1. 【算法】剑指 Offer 12. 矩阵中的路径

    文章目录 1.概述 2.我的算法 2.1 棋盘 2.1 开始节点 2.2 点没被访问 2.3 点是否在棋盘内 2.4 下一步 2.5 主方法 2.6 核心方法 2.7 测试类 3.leecode1 1 ...

  2. 【附可运行代码】剑指 Offer 12. 矩阵中的路径

    立志用最少的代码做最高效的表达 给定一个 m x n 二维字符网格 board 和一个字符串单词 word .如果 word 存在于网格中,返回 true :否则,返回 false . 单词必须按照字 ...

  3. 剑指 Offer 12. 矩阵中的路径

    这里使用了回溯算法,回溯算法是一种比较特别的DFS,它需要在达到搜索条件后,回溯上一次,继续搜索.普通的DFS适合找路径是否存在的问题,而回溯算法适合解决有几条路径的问题. 这里给出DFS的模板 df ...

  4. 剑指Offer 12—矩阵中的路径

    题目描述 给定一个 m x n 二维字符网格 board 和一个字符串单词 word .如果 word 存在于网格中,返回 true :否则,返回 false . 单词必须按照字母顺序,通过相邻的单元 ...

  5. 剑指offer——12.矩阵中的路径(不熟)

    题目: 题1:请设计一个函数,用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径.路径可以从矩阵中的任意一个格子开始,每一步可以在矩阵中向左,向右,向上,向下移动一个格子.如果一条路径经过了矩 ...

  6. 【LeetCode笔记】79. 单词搜索 剑指 Offer 12 矩阵中的路径(Java、dfs)

    文章目录 题目描述 思路 & 代码 更新版 2.0 题目描述 一眼dfs,走四个方向即可 思路 & 代码 class Solution {boolean[][] visited;boo ...

  7. 剑指 Offer(C++版本)系列:剑指 Offer 12 矩阵中的路径

    文章目录 同步GitHub在此

  8. LeetCode-剑指 Offer 12. 矩阵中的路径

    剑指 Offer 12. 矩阵中的路径 思路一:DFS+回溯 DFS 解析: 递归参数: 当前元素在矩阵 board 中的行列索引 i 和 j ,当前目标字符在 word 中的索引 k . 终止条件: ...

  9. 《剑指offer》——矩阵中的路径

    更多2019年的技术文章,欢迎关注我的微信公众号:码不停蹄的小鼠松(微信号:busy_squirrel),也可扫下方二维码关注获取最新文章哦~ T: 题目描述 请设计一个函数,用来判断在一个矩阵中是否 ...

  10. 剑指offer:矩阵中的路径(递归回溯法DFS类似迷宫)

    1. 题目描述 /*请设计一个函数,用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径.路径可以从矩阵中的任意一个格子开始,每一步可以在矩阵中向左,向右,向上,向下移动一个格子.如果一条路径经 ...

最新文章

  1. 员工拒绝加班,被判赔公司1.8万!网友炸锅
  2. spring boot mybatis没有扫描jar中的Mapper接口
  3. 不止命令行!自定义VS生成事件
  4. 2021年高考成绩查询山东德洲,2021年德州高考状元是谁分数多少分,历年德州高考状元名单...
  5. HTTPS-客户端与服务器三次握手过程(含wireshark分析)
  6. 年度大战即将拉开!iPhone 11系列后,轮到华为Mate30系列表演了
  7. Android新浪微博分享
  8. js控制从绿色到红色的渐变
  9. python无法正常启动0xc000007b_应用程序无法正常启动(0xc000007b)。
  10. Ubuntu18.04下 安装SMPlyer视频播放器 设置倍速播放
  11. 计算机电路计数器pl什么意思,计数器原理—不懂就要看哦~~
  12. linux 硬盘错误,linux – 硬盘读取错误……停止?
  13. Sybase ASE 查询当前版本和所有数据库
  14. 活久见!Linux命令行居然也可以用来查看图像?
  15. P11-Windows与网络基础-Windows用户管理
  16. “经历了人生百态世间的冷暖,这笑容温暖纯真”
  17. 展开关闭页面html,JQUERY实现网页右下角固定位置展开关闭特效的方法
  18. VirtualBox虚拟机与主机间无法复制粘贴
  19. Python小练习 - 用递归将十进制转化为二进制
  20. 超详细图解:如何使用 WordPress搭建一个个人博客?

热门文章

  1. 【您还有心跳吗?超时机制分析 】
  2. 《C语言及程序设计》实践参考——找数字
  3. java从入门到精髓 - IO输入输出
  4. DNN群宗旨--QQ群(DNN山海经):56782274
  5. 14.TCP/IP 详解卷1 --- DNS:域名系统
  6. 24.磁盘配额(Quota)
  7. 6. URL (2)
  8. smarty中的在模板页中应用js css img等文件时,地址是相对与模板页对应的php文件
  9. svn对项目权限进行管理
  10. Java中的指针---Unsafe应用解析