• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

关于java:12-矩阵中的路径深度优先搜索DFS

java 搞代码 4年前 (2022-01-28) 37次浏览 已收录 0个评论

153. 寻找旋转排序数组中的最小值


深度优先搜寻(DFS)

来源gao.dai.ma.com搞@代*码网本问题是典型的矩阵搜寻问题,可应用 深度优先搜寻(DFS)+ 剪枝 解决。
像是在暴力破解
1、遍历矩阵,找到雷同的字符,
2、从这个字符开始递归上下左右的字符,出界和与word[k+1]不等则返回false;
3、若与word[k+1]雷同,且k是最初一个字符,就示意递归完结且有符合条件的字符串,返回true。
4、若与word[k+1]雷同,但不是最初一个字符,就示意须要递归,这里比拟暴力了,
上下左右有一个合乎的,就持续递归上来,没有合乎的就中断并返回false。从矩阵的下一个字符从新找与word的第一个字符雷同的。

这里还有一个重点!!:矩阵中的字符只能用一次,所以须要将判断雷同的字符置为空格字符'\0',如果这条路走不通,即第四步返回了false,再复原成原样。

操作:

只有有一条路true了,就返回true,所有的路都走不通了等循环完结了才返回false。
  • 留神:

    • 出界是 i>board.length-1
    • 递归写的时候,感觉都是先写否定的,和跳出递归的,最初写简单的
    • 记得把用过一次的换成’\0′

搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:关于java:12-矩阵中的路径深度优先搜索DFS
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址