欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    算法合集之《回到起点-一种突破性思维》.ppt

    • 资源ID:6012038       资源大小:1.82MB        全文页数:27页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    算法合集之《回到起点-一种突破性思维》.ppt

    回到起点一种突破性思维,南京市外国语学校 朱泽园,问题一的提出USACO Shaping Regions 改编,N个不同颜色的不透明长方形(1=N=3000)放在一张长宽分别为A、B的白纸上边与白纸的边缘平行求俯视时看到的所有颜色的面积,问题一的解决简单的预处理,离散化整数坐标坐标范围在12n之间。,离散行,离散列,问题一的解决经典算法,3,8线段对应线段树上节点,问题一的解决经典算法,自顶至底依次插入颜色为X的线段l,r,该区间l,r上原有颜色不被替换,其余部分染上颜色X。O(logn)返回所有颜色的覆盖量。O(n),问题一的解决经典算法,O(n2logn)优点:广为人知复杂度较低,练习线段树的经典教材,问题一的解决朴素算法,O(n3),问题一的解决另类算法,O(n3)优点:极易实现启发性强(有潜力可挖)寻找冗余!这一段的检索有必要吗?,问题一的解决另类算法,对已覆盖的区间,新增后续指针走进已覆盖离散格时,沿指针进入下一个离散格将途径离散格的后续指针设为当前覆盖区间之后的第一格。路径压缩?神似并查集!,问题一的解决另类算法,将相邻的已染色线段看成一个集合红色 覆盖2,5,1,2,3,4,5,6,7,8,问题一的解决另类算法,1,2,3,4,5,6,7,8,黄色 覆盖4,6,问题一的解决另类算法,1,2,3,4,5,6,7,8,绿色 覆盖1,8,问题一的解决另类算法,1,2,3,4,5,6,7,8,完整的路径压缩,再加上按秩合并可以使改进算法的时间复杂度完全降至O(n2),具体操作和证明参见我的论文。,问题二的提出BalticOI2004 1-3 Sequence改编,给定序列t1,t2,tN,要求构建一个递增序列z1=z2=zN,使得|t1-z1|+|t2-z2|+|tN-zN|尽可能小。其中1N1000000,0tK2000000000。,最优z序列,注:为了更清楚地说明诸引理与算法,下文将多次出现类似的图。其中黑点代表t序列,线段代表某一个z序列的方案。,问题二的解决定义与说明,由于最优方案不为一,下文中描述X是一组最优方案的同时,并不表示最优方案一定是X。对方案进行微调时,不保证原方案不是最优,但我们可以保证调整后的方案一定不会变差(某种程度上更接近最优)。z序列组成的方案可用(z1,z2,zn)表示。,问题二的解决引理,对给定的t1,t2,.,tn,如果最优方案满足z1=z2=.=zn=x,那么x为t1.n中位数时,其为一个最优方案。,问题二的解决引理,对于给定的t1,t2,.,tn,如果最优方案是z1=z2=.=zn=u,那么,问题二的解决引理,对t1,t2,.tn,以及tn+1,tn+2,.tn+m,如果(u,u,.u)和(v,v,.,v)分别是它们的最优方案,并且uv,那么z1.n+m=t1.n+m的中位数,后半部分的局部最优序列,前半部分的局部最优序列,问题二的解决第一类算法,依次处理每个元素,对先前已经得到的最优方案进行微调,第1个区间,第2个区间,第3个区间,将z值相同的子序列看作一个连续的区间,为插入的新元素建立一个独立的临时区间,问题二的解决第一类算法,如果当前最后一个区间的z值较前一个区间小,根据引理我们合并这两个区间,新的z值设定为它们的中位数,第1个区间,第2个区间,第3个区间,合并,找到新的中位数,问题二的解决第一类算法,如果当前最后一个区间的z值较前一个区间小,根据引理我们合并这两个区间,新的z值设定为它们的中位数,第1个区间,第2个区间,第3个区间,合并,找到新的中位数,问题二的解决第一类算法,选取一个优秀的数据结构,它可以高效地完成如下任务:1、集合合并2、求出该集合的中位数。注意到集合最多和并n-1次,求中位数操作不超过n-1次。,问题二的解决第一类算法,方法一:平衡二叉树 O(n(logn)2)方法二:最大堆 O(n(logn)2)可以严密证明,区间合并时相邻两个区间的数,最大一半的并集,恰好是合并后区间最大的一半方法三:在方法二基础上寻找冗余,努力避免集合的合并操作 O(nlogn)方法四:左偏树 O(nlogn)实现难!思考深度大!,问题二的解决引理,对给定的t序列t1.n,如果z1.n是一组最优策略,那么我们可以假定:满足zix的最小的i,恰好是最小的i使得对任意ijn,ti.j的中位数x。(如果某组最优方案不满足该条件,我们可以经过调整,使得另一个最优方案满足该条件),问题二的解决引理,满足zix的最小的i,恰好是最小的i使得对任意ijn,ti.j的中位数x。,i,zjx|i=j=n,x,zj=x|1=ji,问题二的解决第二类算法,二分!,i,x,O(nlogn),总结,问题的表示往往比答案更重要,答案不过乃数学或实验。要提出新的问题、新的可能性、从某个新的角度考虑一个旧问题,都要求创造性的想象力,回到起点对问题重新定义,这才是真正的科学进步之所在。,

    注意事项

    本文(算法合集之《回到起点-一种突破性思维》.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开