9512.net
甜梦文库
当前位置:首页 >> 其它课程 >>

算法复习材料



☆设计思想:动态规划法将待求解问题分解成若干个相互重叠的子问题, 每个子 问题对应决策过程的一个阶段, 一般来说,子问题的重叠关系表现在对给定问题 求解的递推关系中, 将子问题的解求解一次并填入表中,当需要再次求解此子问 题时, 可以通过查表获得该子问题的解而不用再次求解,从而避免了大量重复计 算。 解题过程:原问题→(子问题 1、子问题 2?子问题 n)→填表→原问题的解 解题

步骤:找出最优解的性质,并刻画其结构特征。递归地定义最优值。以自底 向上的方式计算出最优值。根据计算最优值时得到的信息,构造最优解。 适用范围:满足最优性原理。 ☆设计思想:根据已有的信息和局部最优原则做出选择, 并且无论结果是什么都 不会改变。 解题过程:考虑以下几个方面: (1)候选集合 C(2)解集合 S: (3)解决函数 solution (4)选择函数 select(5)可行函数 feasible 解题步骤:使用选择函数 select 按照某种贪心策略,从候选集合 c 中选择一个元 素 x,用可行函数 feasible 去判断解集合 s 加入 x 后是否可行,如果可行,把 x 合并到解集合 s 中,并把它从候选集合 c 中删去;否则,丢弃 x,从候选集合 c 中根据贪心策略再选择一个元素,重复上述过程,直到找到一个满足解决函数 solution 的完整解。 适用范围:具有最优子结构性质和贪心选择性质的问题 ☆贪心算法与动态规划算法的差异:以 0-1 背包问题为例,贪心选择之所以不能 得到最优解是因为在这种情况下,它无法保证最终能将背包装满,部分闲置的背 包空间使每公斤背包空间的价值降低了。事实上,在考虑 0-1 背包问题时,应比 较选择该物品和不选择该物品所导致的最终方案,然后再作出最好选择。由此就 导出许多互相重叠的子问题。 这正是该问题可用动态规划算法求解的另一重要特 征。

☆回溯法的一半框架(递归形式) :主算法 1、X={};2、flag=false;3、advance (1) ;4、if(flag)输出解 X else 输出“无解” ; Advance(int k)1、对每一个 x∈S(下标 k)循环执行下列操作 1.1 x(下标 k) =x;1.2 将 x(下标 k)加入 X;1.3 if(X 是最终解)flag=true;return;1.4 else if (X 是部分解)advance(k+1) ; 回溯法的非递归迭代形式的一半框架: 1、X={};2、flag=flag;3、k=1;4while(k)=1)4.1 当(S(下标 k)没有被 穷举)循环执行下列操作 4.1.1 x(下标 k)=S(下标 k)中的下一个元素;4.1.2 将 x(下标 k)加入 X;4.1.3 if(X 为最终解)flag=true;转步骤 5;4.1.4 else if (X 为部分解)k=k+1;转步骤 4; 4.2 重置 S(下标 k) ,使得下一个元素排在 第 1 位; 4.3 k=k-1; 5、if flag 输出解 X;else 输出“无解” ☆设计思想:首先,确定一个合理的限界函数,并根据限界函数确定问题的目标 函数的界[down, up];然后,按照广度优先策略遍历问题的解空间树:当搜索到 达一个扩展结点时, 一次性扩展它的所有孩子,估算每一个孩子结点的目标函数 的上(下)界值(又称为耗费函数值);将那些满足约束条件且耗费函数值不超过目 标函数的界的孩子, 插入活动结点表 PT 中,再从 PT 表中取耗费函数值极大(小)

的下一结点同样扩展;直到找到所需的解或 PT 表为空为止。其耗费函数值是极 值(极大或极小),则该叶子结点对应的解就是问题的最优解;否则,调整问题的 目标函数的界为该叶子结点的耗费函数值,然后丢弃 PT 表中超出目标函数界的 结点,再次选取结点继续扩展。 解题过程:1.根据限界函数确定目标函数的界[down, up];2.将待处理结点表 PT 初始化为空;3.对根结点的每个孩子结点 x 执行下列操作 3.1 估算结点 x 的目标函数值 value; 3.2 若(value>=down),则将结点 x 加入表 PT 中;4.循环直到某个叶子结点的目 标函数值在表 PT 中最大 4.1 i=表 PT 中值最大的结点; 4.2 对结点 i 的每个孩 子结点 x 执行下列操作 4.2.1 估算结点 x 的目标函数值 value; 4.2.2 若(value>=down),则将结点 x 加入表 PT 中; 4.2.3 若(结点 x 是叶子结点 且结点 x 的 value 值在表 PT 中最大), 则将结点 x 对应的解输出, 算法结束;4.2.4 若(结点 x 是叶子结点但结点 x 的 value 值在表 PT 中不是最大), 则令 down=value, 并且将表 PT 中所有小于 value 的结点删除; ☆分支限界法与回溯法的区别: 求解目标不同: 回溯法——找出满足约束条件的 所有解 分支限界法——找出满足条件的一个解,或某种意义下的最有解搜索方式不同: 回溯法——深度优先分支限界法——广度优先或最小耗费优先。此外,在分支限 界法中,每一个活结点只有一次机会成为扩展结点。



更多相关文章:
算法设计复习简答题资料
8页 1下载券 现代方法设计复习资料 20页 免费喜欢此文档的还喜欢 ...算法的特征?算法和程序的区别 通俗的讲,算法是指解决问题的方法和过程。严格地...
算法复习资料
算法复习资料_计算机软件及应用_IT/计算机_专业资料。算法分析设计的复习资料,考试前首选1、算法(Algorithm) :对特定问题求解步骤的一种描述,是指令的有限序列。 2...
数据结构与算法分析复习资料
数据结构与算法分析复习资料_工学_高等教育_教育专区 暂无评价|0人阅读|0次下载|举报文档 数据结构与算法分析复习资料_工学_高等教育_教育专区。...
算法分析复习题(含答案)
算法分析复习题(含答案)_计算机软件及应用_IT/计算机_专业资料。一、选择题 1、衡量一个算法好坏的标准是( C )。(A)运行速度快 (B)占用空间少 2、记号 O ...
西工大算法复习资料总结(最终修订版)
西工大算法复习资料总结(最终修订版)_工学_高等教育_教育专区。西工大算法复习资料总结(最终修订版) 笔试部分 一.简答题(40 分) 1.算法的基本概念、性质及其与...
算法复习资料
算法复习资料_工学_高等教育_教育专区。广工大算法设计与分析复习题考试重点第一章 1、算法是指解决问题的一种方法或一个过程,具体来说是由若干条指令组成的有穷...
算法分析复习题目及答案
算法分析复习题目及答案_工学_高等教育_教育专区。一、选择题 1、二分搜索算法是利用( A )实现的算法。 A、分治策略 B、动态规划法 C、贪心法 D、回溯法 2...
1、算法分析复习题目及答案
1、算法分析复习题目及答案_工学_高等教育_教育专区。一。选择题 1、二分搜索...2014教师资格材料分析辅... 2014小学教师资格考试《... 2014年幼儿园教师资格考...
2016算法复习提纲
2016算法复习提纲_其它课程_高中教育_教育专区。2016-2017(1)算法设计与分析复习...2016工材料复习提纲1 暂无评价 7页 2下载券 2016-6马原复习提纲 暂无评价 ...
算法分析与设计复习资料
答: (1)递归算法:直接或间接地调用自身的算法; (2)递归函数:用函数自身给出定义的函数。 3.递归函数的二要素是什么? 答: (1)边界条件(2)递归方程 4.分治...
更多相关标签:

All rights reserved Powered by 甜梦文库 9512.net

copyright ©right 2010-2021。
甜梦文库内容来自网络,如有侵犯请联系客服。zhit325@126.com|网站地图