算法 | 分支限界法和回溯法的搜索策略&动态规划特性&贪心算法特性

分支限界法的搜索策略:

一次性生成当前扩展节点的所有儿子节点,然后从活节点表中选取要扩展的下一个结点,为了加快搜索速度,会计算节点的函数值,即限界函数。然后从活节点表中选取最有利的结点进行扩展。使搜索朝着最优解的方向进行,以便更快的找到最优解


回溯法的搜索策略:

在有问题所有可能解的状态空间树 上进行深度优先搜索,解为叶子节点 ,当搜索到一个新节点时,先判断该节点的子树是否含有问题的解,如果没有就放弃搜索该节点,退回到父节点,再进行深搜。在整个回溯过程,不是事先构造好整颗状态空间树,而是逐步构造出整颗状态空间树,边搜索边构造


动态规划的特性:

最优子结构:是指问题的最优解可以通过求解子问题的解来得到

重叠子问题:在求解的过程中,有大量的子问题是重复的

无后效性:求解时只和前面阶段有关,和后面的阶段无关


什么是贪心算法

通过当前的最优选择,期待通过局部的最优选择来得到全局的最优解

贪心算法的特性:

最优子结构:问题的最优解包括子问题的解

贪心选择策略 :通过局部最优选择可以实现得到原问题的最优解


相关推荐
会编程的土豆18 分钟前
日常做题 vlog
数据结构·c++·算法
Omigeq43 分钟前
1.4 - 曲线生成轨迹优化算法(以BSpline和ReedsShepp为例) - Python运动规划库教程(Python Motion Planning)
开发语言·人工智能·python·算法·机器人
网络工程小王1 小时前
【大模型(LLM)的业务开发】学习笔记
人工智能·算法·机器学习
y = xⁿ1 小时前
【Leet Code 】滑动窗口
java·算法·leetcode
WBluuue1 小时前
数据结构与算法:二项式定理和二项式反演
c++·算法
nianniannnn1 小时前
力扣104.二叉树的最大深度 110. 平衡二叉树
算法·leetcode·深度优先
_深海凉_1 小时前
LeetCode热题100-只出现一次的数字
算法·leetcode·职场和发展
nianniannnn2 小时前
力扣206.反转链表 92.反转链表II
算法·leetcode·链表
澈2072 小时前
哈希表实战:从原理到手写实现
算法·哈希算法
旖-旎2 小时前
哈希表(存在重复元素||)(4)
数据结构·c++·算法·leetcode·哈希算法·散列表