感性理解递归搜索(dfs)

本文介绍了递归搜索DFS的概念,强调了递归在算法中的重要性,解释了DFS是如何调用自身进行深度搜索的。讨论了剪枝以优化搜索效率,回溯在搜索过程中的作用,以及正确定义边界的重要性。最后,指出在递归中,返回的是上一层递归,而非主函数,并鼓励读者通过实践深入理解递归搜索。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

递归绝对是我最最最讨厌的东西,没有之一,所以我现在是怀着百感交集的心情在写这篇博客,然而最纠结的是我现在无从下手。

为了表示歉意,我也不知道从哪里开始,就想到什么些什么吧

第一步:理解递归搜索的概念

  • 递归搜索是一个麻烦又复杂的东西,但是却是一个不得不学懂的算法
  • 函数有很多种形式,在搜索中通常是dfs,反正我讲的是dfs,也就是调用自己的函数
  • 要想搜索快,就得学剪枝
  • 搜索不仅仅是搜索,还有害死人的回溯,这个我觉得是搜索当中最容易搞乱的
  • 对了对了,还有边界的定义,搜索因为是深搜所以要时间长,如果边界是错误就麻烦了
  • 最后一点就是在搜索当中return绝对不是返回到主函数,而是返回到上一个递归中

第二步:分开理解

概念性的大概的我记得的东西我都讲了,剩下的就一点一点来解剖,哈哈哈哈哈!!! 

  • 递归为什么麻烦复杂却一定要学呢?因为递归是一个很广泛的东西,递归函数的发明绝对是世界上最伟大的发明之一,换个角度想想,如果没有递归自己调用自己的话,
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值