📣 独立日限时特惠: VIP通行证立减$68
查看: 2724| 回复: 13
跳转到指定楼层
上一主题 下一主题
收起左侧

DFS在非图论算法具体是怎么思考的?

全局:

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看附件。没有帐号?注册账号

x
小弟不才 最近刷题的时候 发现很多题目都是属于“dfs”类型的。dfs的概念应该是在图论里吧? 在普通的非图论算法题里面 一般做起题目来是怎么考虑的呢?比如说求一个String的所有permutation,或者八皇后问题。目前理解下来,就是把当前所有可以得到的解 当做图论中得下一个vertex,然后依次去遍历,是吗?我不知道我的理解对不对。或者还有需要补充的地方? 还有一般哪些题型 一般都可以通过dfs来做呢?




上一篇:今年有木有组织刷题啊?
下一篇:Amazon 面试 OO设计题要求达到什么程度

本帖被以下淘专辑推荐:

推荐
hetong_007 2014-1-7 16:45:49 | 只看该作者
全局:
只要需要求的解可以通过一个序列或者一系列的步骤来表示,就可以用DFS。不过一些情况下DFS需要剪枝,或者是效率太低而使用动态规划等其他方法。
回复

使用道具 举报

🔗
1guangnian 2014-1-3 07:06:27 | 只看该作者
全局:
个人一点理解:
当前节点(状态)通过某操作转移到下一节点(状态),进入下一层DFS,完了返回到这一状态时要撤销这一步操作
类似于((()))这种括号序列的感觉,左括号看作1(进行某一操作),右括号看作-1(撤销某一操作),他们是一一对应的,栈的顺序
实现时只考虑其中一层(一个状态)
回复

使用道具 举报

🔗
1guangnian 2014-1-3 07:08:42 | 只看该作者
全局:
如果你能把题目抽象成一个图/树,一个节点对应一个状态,状态之间通过某种操作转移,或者需要枚举时,肯定可以用DFS搞定的,具体还是多做题找感觉吧
回复

使用道具 举报

🔗
1guangnian 2014-1-3 07:10:51 | 只看该作者
全局:
感觉还有就是DFS比较好实现recursion
回复

使用道具 举报

全局:
典型的题目就是 求出所有XXX 所有路径,all possible results 等等
回复

使用道具 举报

🔗
readman 2014-1-3 07:50:22 | 只看该作者
回复

使用道具 举报

🔗
 楼主| baojialiang 2014-1-7 10:27:51 | 只看该作者
全局:
readman 发表于 2014-1-3 07:50
http://blog.csdn.net/u011095253/article/details/9158387

多谢!
回复

使用道具 举报

🔗
 楼主| baojialiang 2014-1-7 10:28:19 | 只看该作者
全局:
readman 发表于 2014-1-3 07:50
http://blog.csdn.net/u011095253/article/details/9158387

多谢 哈哈~
回复

使用道具 举报

🔗
kelvinzhong 2014-1-7 17:40:17 | 只看该作者
全局:
其实我想问问经常会有题目要求给出 all possible result, 那么我用递归, 如果第一步成立,就递归到下一步,知道满足所有条件就是一个possible result, 这种做法是不是DFS?
回复

使用道具 举报

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

本版积分规则

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