选修课2.1.pptVIP

  1. 1、本文档共85页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
选修课2.1,选修课王子,包头教育局精品选修课,包头精品选修课,大学选修课,大学选修课程有哪些,公共选修课,高中英语选修课,西安电大选修课平台,高中选修课有哪些

主流算法: 1.搜索 //回溯 2.DP(动态规划)  3.贪心  4.图论 //Dijkstra、最小生成树、网络流 5.数论 //解模线性方程 6.计算几何 //凸壳、同等安置矩形的并的面积与周长 7.组合数学 //Polya定理 8.模拟  9.数据结构 //并查集、堆 10.博弈论  2.1 回溯法 需要用计算机求解的组合试题一般有两种类型: 回溯法:该方法首先暂时放弃关于问题规模大小的限制,并将问题的候选解按某种顺序逐一枚举和检验。 当发现当前候选解不可能是解时,就选择下一个候选解; 若当前候选解除了还不满足问题规模要求外,满足所有其他要求时,继续扩大当前候选解的规模,并继续试探。 如果当前候选解满足包括问题规模在内的所有要求时,该候选解就是问题的一个解。 定义:在回溯法中,放弃当前候选解,寻找下一个候选解的过程称为回溯。扩大当前候选解的规模,以继续试探的过程称为向前试探。 回溯法基本思想: 回溯法解题步骤: 针对所给问题,定义问题的解空间 确定易于搜索的解空间结构 以深度优先的方式搜索解空间,并且在搜索过程中有剪枝函数避免无效搜索 [例1] N皇后问题 一个n×n的国际象棋棋盘上放置n个皇后,使其不能相互攻击,即任何两个皇后都不能处在棋盘的同一行、同一列、同一条斜线上,试问共有多少种摆法? 2.算符(operater) 算符是把问题从一种状态变换到另一种状态的方法代号。算符通常采用合适的数据来表示。N皇后的一种摆法对应1..n排列方案(a1,…,an)。排列中的每个元素ai对应i行上皇后的列位置(1<=i<=n)。由此想到,在n皇后问题中,可采用当前行的列位置i(1<=i<=n)作为算符。由于每行仅放一个皇后,因此行攻击的问题不存在,但在试放当前行的一个皇后时,不是所有列位置都适用。 例 3.结点(node) 用以表明某状态特征及关联方式的基本信息单元。结点的数据结构一般为结构体类型。 现在先观察一个简单的n皇后问题。设n=4,初始状态显然是一个空棋盘。 算符的个数即为解答树的次数。 由图可见,4皇后的解答树是4次树。 一棵树中的某个分枝结点也可视作为“子根”,以此结点为根的树则称作“子树”。 由此可以看出解答树的结构: 1.初始状态构成(主)树的根结点; 2.除根结点以外,每个结点都具有一个、且只有一个父结点。对应于n皇后问题来说,置放i行皇后的子结点,只有在置放了前i-1行皇后的一个父结点基础上产生; 3.每个非根结点都有一条路径通往根结点,其路径长度(代价)定义为这条路径的边数。对应于n皇后来说,当前行序号即为路径代价。当路径代价为n+1时,说明n个皇后已置放完毕,一种成功的摆法产生。 由上述算法思想,容易想到,应选择怎样一种数据结构来存放当前路径上各结点的状态和算符?它应具有“后进先出”的特征,这就是通常所说的栈。 为回溯法设计的一个递归过程arrange(),就是利用系统的这一特性。 3.递归过程的边界条件是: (1)若stack[L]是目标结点; (2)若stack[L]再无可使用的算符,即无法再扩展。 4.只要当前结点能扩展,则递归调用arrange(L+1)。 5.主程序中调用arrange(1),从初始结点出发回溯搜索。递归结束返回主程序时(此时L恢复为1)表明所有路径搜索完毕。 例题:P2078 练习 北大: 1011 Sticks 1020 Anniversary Cake 1072 Puzzle Out 1055 BULK MAILING 2.2 贪心法 贪心法也是从问题的某一个初始解出发,向给定的目标递推。但不同的是.推进的每一步不是依据某一固定的递推式,而是做一个当时看似最佳的贪心选择,不断地将问题实例归纳为更小的相似的子问题, 并期望通过所做的局部最优选择产生出一个全局最优解。 问题是:这种局部贪心的选择是否可以得出全局最优解呢?在某些情况下是可以的。 [例1]删数问题 算法分析: 首先必须注意,试题中正整数N的有效位数为240位,而计算机中整数有效位(包括符号位)不过11位,无论如何也达不到试题的数值要求。 因此,必须采用可含256个字符的字串来替代整数。 以字串形式输入N,使用尽可能逼近目标的贪心法来逐一删去其中S个数符,每一步总是选择一个使剩下的数最小的数符删去。之所以作出这样贪心的选择,是因为删s个数符的全局最优解.包含了删一个数符的子问题的最优解。

文档评论(0)

gooddoc + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档