摘要:
前言&吐槽 我看网上都说深度优先搜索是一种遍历树和图的算法,但是我还没学数和图啊!老师就讲了。 不过这种算法也确实挺好用的,下面我们就来介绍一下。 介绍 DFS形象点来说就是“不撞南墙不回头”,必须要一条路走到黑,之后再考虑其他路。 因此DFS最重要的部分就是回溯了。 而关于此算法的步骤,网上总结得 阅读全文
前言&吐槽 我看网上都说深度优先搜索是一种遍历树和图的算法,但是我还没学数和图啊!老师就讲了。 不过这种算法也确实挺好用的,下面我们就来介绍一下。 介绍 DFS形象点来说就是“不撞南墙不回头”,必须要一条路走到黑,之后再考虑其他路。 因此DFS最重要的部分就是回溯了。 而关于此算法的步骤,网上总结得 阅读全文
posted @ 2022-03-19 15:14
帝皇の惊
阅读(110)
评论(0)
推荐(0)
摘要:
前言&吐槽 同样可以拿dfs,这道题怎么就难那么多呢? 题目描述 奇怪的电梯 算法设计 dfs的基本框架就是遍历一个结点的每一条路,所以我们的算法大概可以设计成这样 void dfsInEveryFloor() { if (当前楼层 == 目标楼层) { 做一些操作... retrun; } if 阅读全文
前言&吐槽 同样可以拿dfs,这道题怎么就难那么多呢? 题目描述 奇怪的电梯 算法设计 dfs的基本框架就是遍历一个结点的每一条路,所以我们的算法大概可以设计成这样 void dfsInEveryFloor() { if (当前楼层 == 目标楼层) { 做一些操作... retrun; } if 阅读全文
posted @ 2022-03-19 15:12
帝皇の惊
阅读(402)
评论(0)
推荐(0)
摘要:
前言&吐槽 这道题用DFS很好做,唯一需要注意的是你正在下中国象棋,所以马是不能够向上向下走的,只能斜着走。 题目描述 跳马问题 算法设计 使用DFS搜下去就行了 void DFS(){ if(满足条件): ... return; if(选择一种分支): DFS() if(另一种): DFS() } 阅读全文
前言&吐槽 这道题用DFS很好做,唯一需要注意的是你正在下中国象棋,所以马是不能够向上向下走的,只能斜着走。 题目描述 跳马问题 算法设计 使用DFS搜下去就行了 void DFS(){ if(满足条件): ... return; if(选择一种分支): DFS() if(另一种): DFS() } 阅读全文
posted @ 2022-03-19 14:40
帝皇の惊
阅读(163)
评论(0)
推荐(0)

浙公网安备 33010602011771号