常见算法要点思路——贪心与搜索问题

常见算法要点思路——贪心与搜索问题

贪心算法

  • 需要满足的条件:问题具有贪心选择性,并且具有优化子结构(就是在选择完之后的子问题,和总的问题达到最优解是一致的);证明贪心选择性,就是证明某一个最优解中包含了贪心选择的内容
  • 和动态规划相比,二者都需要描述清除问题的优化子结构;但是贪心算法重点是证明贪心选择的合理性,DP重点是找到子问题和合理的递推关系式
  • 二者和分治相比,前两者面对最优化问题,分治不考虑而他的重点是拆分递归和合并

树搜索

  • 将问题求解的步骤转换为树的搜索过程,每一步的多种选择作为树的分支

  • 注意:在树搜索问题中的使用的广度优先和深度优先搜索和平时遍历时不太一样的,换句话说,在广度遍历时下层节点是不能和上层节点重复的,但是是树搜索问题中,这样是可行的,因为树搜索的本质是列举所有的问题可能。

  • 深度优先广度优先在树搜索中的区别就是在寻找问题的解时:深度优先是一直探索某一种可能的后续,有连续性;广度优先是每探索一步就换为另一种可能。

  • 深度优先搜索的优化

    • Hill-Climbing:每次选启发测度最小的子节点进行扩展(启发测度就是和目标问题的接近程度),但是这个方法基于贪心的思想,只针对当前节点的子节点&

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值