📣 独立日限时特惠: VIP通行证立减$68
12
返回列表 发新帖
楼主: 牧moon
跳转到指定楼层
上一主题 下一主题
收起左侧

[二分/排序/搜索] 觉得DFS实现起来要比其他的算法困难?

🔗
 楼主| 牧moon 2020-12-8 01:53:57 | 只看该作者
全局:
yjjw 发表于 2020-12-7 02:38
想起在本科入门编程课学Racket时候老师的一句话"Trust the Natural Recursion!"

至理名言,可是面试就总想着是不是要记忆化啊,是不是要DP啊,不过第一步写完一个DFS的暴力会帮助优化思路,只是面试时不一定有这个时间
回复

使用道具 举报

🔗
 楼主| 牧moon 2020-12-8 01:58:03 | 只看该作者
全局:
不知道小帅 发表于 2020-12-8 00:53
recursion确实不那么直观,不过其实处理这样的问题,首先要把你的function定义清楚,input是啥,output是啥 ...

有同感,recursion不直观我可以就想成一个blackbox,但是如你所说,首先要明确这个blackbox的定义,或者是接口,基本这个想明白了题也就解出来了。我只是纠结于,别的题想到特定的算法和数据结构也基本就做出来了,比如heap,双指针,拓扑排序,但是DFS问题即使想到用DFS,最难的部分是如何定义递归,弄清楚依旧完蛋,白高兴一场
回复

使用道具 举报

全局:
牧moon 发表于 2020-12-8 01:53
至理名言,可是面试就总想着是不是要记忆化啊,是不是要DP啊,不过第一步写完一个DFS的暴力会帮助优化思 ...

DP的题目一般来说问题还是不太一样的,DP的话一般是最大,最小,可能的总数,是否存在之类的。
输出所有可能结果的话还得是dfs/backtracking。
回复

使用道具 举报

全局:
牧moon 发表于 2020-12-8 01:58
有同感,recursion不直观我可以就想成一个blackbox,但是如你所说,首先要明确这个blackbox的定义,或者 ...

对,这个感觉靠经验和直觉比较多,其实dp也是一样的,先定义一个状态的表示,定义出来了,其实题目就做完一半了,很多时候只要有了状态表示,状态转移就类似于列一个方程了,也就没那么难了。

评分

参与人数 1大米 +1 收起 理由
我想要offer真的 + 1 此处有大神!

查看全部评分

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

>
快速回复 返回顶部 返回列表