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

分支限界法的搜索策略:

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


回溯法的搜索策略:

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


动态规划的特性:

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

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

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


什么是贪心算法

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

贪心算法的特性:

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

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


相关推荐
simple_ssn几秒前
【C语言刷力扣】1502.判断能否形成等差数列
c语言·算法·leetcode
寂静山林9 分钟前
UVa 11855 Buzzwords
算法
Curry_Math13 分钟前
LeetCode 热题100之技巧关卡
算法·leetcode
ahadee21 分钟前
蓝桥杯每日真题 - 第10天
c语言·vscode·算法·蓝桥杯
军训猫猫头1 小时前
35.矩阵格式的一到一百数字 C语言
c语言·算法
Mr_Xuhhh2 小时前
递归搜索与回溯算法
c语言·开发语言·c++·算法·github
SoraLuna2 小时前
「Mac玩转仓颉内测版12」PTA刷题篇3 - L1-003 个位数统计
算法·macos·cangjie
爱吃生蚝的于勒4 小时前
C语言内存函数
c语言·开发语言·数据结构·c++·学习·算法
ChoSeitaku9 小时前
链表循环及差集相关算法题|判断循环双链表是否对称|两循环单链表合并成循环链表|使双向循环链表有序|单循环链表改双向循环链表|两链表的差集(C)
c语言·算法·链表
Fuxiao___9 小时前
不使用递归的决策树生成算法
算法