研究生课程-算法设计与分析之有哪些信誉好的足球投注网站技术.pptVIP

研究生课程-算法设计与分析之有哪些信誉好的足球投注网站技术.ppt

  1. 1、本文档共61页,可阅读全部内容。
  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文档。上传文档
查看更多
研究生课程-算法设计与分析之有哪些信誉好的足球投注网站技术

* * * * * * * * * * * * * 举一个例子。 * * 状态空间是边有哪些信誉好的足球投注网站边创建 * 解释清楚 f g h等的含义 * 难点是从t+1回溯到t时,怎么判断当前的扩展结点是哪个? * 子集树中内部结点分支的数目是相同的; 但是排列树中内部结点分支数目不一样 * 简单枚举 * 举一个简单例子说明 * 强调回溯步需要的处理! * 在黑板上画出 比较整个解空间树! * * * 回忆用动态规划怎么求解? * 引导思考什么时候更新Bestw的值? 装载问题—例子 n= 4,w= [ 8 , 6 , 2 , 3 ],c1 = 12 。 装载问题—构造最优解 使用一个数组bestx[]记录最优解的路径。 数组x[]存放回溯法当前使用的路径,算法有哪些信誉好的足球投注网站到达叶子结点处,就修正bestx的值。 if(in) //到达叶子结点 { if(cwbestw){ for(int j=1;j=n;j++) bestx[j]=x[j]; bestw=cw; } } bestx可能被更新O(2n),整个算法的计算时间复杂性为O(n2n) 可以进行改进! 旅行商问题 问题描述:某商人要到若干城市去推销商品,已知各城市之间的旅行费用,他要选定一条从驻地出发,经过每个城市一遍,最后回到驻地的路线,使总的费用最短。 G=(V,E)是一个带权图,V表示各个城市,E表示两个城市之间的路程。图的一条周游路线是包括V中的每个顶点在内的一条回路。 问题分析 解空间:如果一个n元组(x1,x2,…,xn)表示图G(V,E)中顶点集合V中各个顶点的排列,显然路径x1-x2-…-xn-x1就可以构成一个回路; 解空间结构:排列树 1 1 3 4 2 4 3 2 4 3 4 2 2 3 4 3 2 解空间和解空间结构; 确定约束函数,并且进行深度优先有哪些信誉好的足球投注网站 问题分析 显式约束: xi≠xj ( ji ),保证是一个排列而没有重复元素! 限界函数: (x1,x2,…,xi)构成图G的一条路径,如果(x1,x2,…,xi)的费用大于当前最优值时,则剪去相应的子树。 算法描述 void Backtrack(int i) { if (i == n) { if (a[x[n-1]][x[n]] != NoEdge a[x[n]][1] != NoEdge (cc + a[x[n-1]][x[n]] + a[x[n]][1] bestc || bestc == NoEdge)) {// 更新最优值 for (int j = 1; j = n; j++) bestx[j] = x[j]; bestc = cc + a[x[n-1]][x[n]] + a[x[n]][1]; } } else {// 是否可进入x[j]子树? for (int j = i; j = n; j++) // 有哪些信誉好的足球投注网站子树 if (a[x[i-1]][x[j]] != NoEdge (cc+a[x[i-1]][x[i]] bestc || bestc == NoEdge)) { Swap(x[i], x[j]); cc += a[x[i-1]][x[i]]; Backtrack(i+1); cc -= a[x[i-1]][x[i]]; //回溯处理 Swap(x[i], x[j]); //回溯处理 } } } 怎么保证显约束条件? 在扩展结点(x1,x2,…,xi)处:x[1:i-1]保存的是已经访问的城市,x[i]是当前访问城市,x[i+1:n]是后续未访问城市。注意Swap的作用!! 复杂度分析 :算法backtrack在最坏情况下可能需要更新当前最优解O((n-1)!)次,每次更新bestx需计算时间O(n),从而整个算法的计算时间复杂性为O(n!)。 回溯法效率分析 通过前面具体实例的讨论容易看出,回溯算法的效率在很大 程度上依赖于以下因素: (1)产生x[k]的时间; (2)满足显约束的x[k]值的个数; (3)计算约束函数constraint的时间; (4)计算上界函数bound的时间; (5)满足约束函数和上界函数约束的所有x[k]的个数。 好的约束函数能显著地减少所生成的结点数。但这样的约束 函数往往计算量较大。因此,在选择约束函数时通常存在生 成结点数与约束函数计算量之间的折衷。 回溯法效率分析 对于许多问题而言,在有哪些信誉好的足球投注网站试探时选取x[i]的值顺序是任意的

文档评论(0)

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

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

1亿VIP精品文档

相关文档