Py小郑 2022-02-21 09:18 采纳率: 96.6%
浏览 83
已结题

Python 有关DFS求解迷宫问题

img


有个地方不懂:就是如果newpoint合法,那么标记当前的点为1,继续深搜newpoint.也就是point[x][y]=1
dfs(newx,newy)这里可以理解,因为防止走回头路。那么为什么对newpoint深搜完了以后,要把原来的point设置为0呢(可访问),如果不加会导致什么?这里搞不灵清,请求指教!

  • 写回答

2条回答 默认 最新

  • 愿此后再无WA Python领域新星创作者 2022-02-21 09:54
    关注

    嗨小郑,谢邀!我还没刷到迷宫类问题,我就从DFS角度讲一下:它是回溯算法中的一个特点:状态重置。dfs就是从一个点开始不断回溯寻找下一个位置,当找到目标位置或者不满足条件时就要回退到上一个位置往其他位置寻找,当这个位置也不满足条件时需要继续回退,以此类推。如果不将point改成0的话当找到当走完一个位置是point数组全都标记成1了,无法继续寻找。等我给你弄个gif

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 3月1日
  • 已采纳回答 2月21日
  • 创建了问题 2月21日

悬赏问题

  • ¥20 c语言写的8051单片机存储器mt29的模块程序
  • ¥60 求直线方程 使平面上n个点在直线同侧并且距离总和最小
  • ¥50 java算法,给定试题的难度数量(简单,普通,困难),和试题类型数量(单选,多选,判断),以及题库中各种类型的题有多少道,求能否随机抽题。
  • ¥50 rk3588板端推理
  • ¥250 opencv怎么去掉 数字0中间的斜杠。
  • ¥15 这种情况的伯德图和奈奎斯特曲线怎么分析?
  • ¥250 paddleocr带斜线的0很容易识别成9
  • ¥15 电子档案元素采集(tiff及PDF扫描图片)
  • ¥15 flink-sql-connector-rabbitmq使用
  • ¥15 zynq7015,PCIE读写延时偏大