ImageVerifierCode 换一换
格式:PPT , 页数:45 ,大小:726.50KB ,
资源ID:14019522      下载积分:10 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/14019522.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(算法合集之《浅谈用极大化思想解决最大子矩形问题》.ppt)为本站上传会员【仙人****88】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

算法合集之《浅谈用极大化思想解决最大子矩形问题》.ppt

1、单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,浅谈用极大化思想解决最大子矩形问题,福州第三中学 王知昆,题意简述,:,John,要在牛场中建造一个大型浴场,但是这个大型浴场不能覆盖任何一个奶牛的产奶点。,John,的牛场和规划的浴场都是矩形,浴场要完全位于牛场之内,并且浴场的轮廓要与牛场的轮廓平行或者重合。要求所求浴场的面积尽可能大。,参数约定:产奶点的个数,S,不超过,5000,牛场的范围,N,M,不超过,30000,30000,。,问题:奶牛浴场,最大子矩形问题:,在一个给定的矩形中有一些障碍点,要找出内部不包含任何障碍点的,轮廓与整个矩形平行或重

2、合的最大子矩形。,问题的模型,定义和说明,定义,有效子矩形,为内部不包含任何障碍点的,边界与坐标轴平行的子矩形。,如下图所示,第一个是有效子矩形,第二个不是。,定义和说明,定义,极大子矩形,为每条边都不能向外扩展的有效子矩形。,定义,最大子矩形,为所有有效子矩形中最大的一个(或多个)。,极大化思想,在一个有障碍点的矩形中的最大子矩形一定是一个极大子矩形。,设计算法的思路:通过枚举所有的极大子矩形,找出最大子矩形。,两个不同的算法,针对问题的性质,可以设计出两个不同的算法。他们分别适用于不同的情况。,约定:,为了叙述方便,设整个矩形的大小为,NM,,其中障碍点个数为,S,。,算法,1,时间复杂度

3、O(S,2,),空间复杂度:,O(S),算法,2,时间复杂度:,O(NM),空间复杂度:,O(S),算法,1,思路,从极大子矩形的性质入手。,极大子矩形的性质:,一个极大子矩形的每条边一定都不能向外扩展。更进一步地说,一个有效子矩形是极大子矩形的条件是这个子矩形的每条边要么覆盖了障碍点,要么与整个矩形的边界重合。,算法设计,基本算法,算法:枚举上下左右四个边界,然后判断组成的矩形是否是有效子矩形。,复杂度:,O(S,5,),可以改进的地方:,产生了大量的无效子矩形,初步改进算法,算法:枚举左右边界,然后对处在边界内的点排序。每两个相邻的点和左右边界一起组成一个矩形。,复杂度:,O(S,3,

4、),可以改进的地方:,枚举了部分不是极大子矩形的情况,算法改进,设计算法的方向:,1,、保证每一个枚举的子矩形都是有效的,2,、保证每一个枚举的子矩形都是极大的,算法的过程:,枚举极大子矩形的左边界,根据确定的左边界,找出相关的极 大子矩形,检查和处理遗漏的情况,算法,1,首先,将所有障碍点按横坐标从小到大的顺序将点标为,1,号点,,2,号点,1,2,3,4,算法,1,为了处理方便,在矩形的四个顶点上各增加,1,个障碍点。,算法,1,第一次取,1,号点作为所要枚举的极大子矩形的左边界,设定上下边界为矩形的上下边界,左边界,上边界,下边界,1,算法,1,从左向右扫描,第一次遇到,2,号点,可以得

5、到一个有效的极大子矩形,如图所示,左边界,上边界,下边界,1,2,算法,1,因为左边界覆盖,1,号点且右边界在,2,号点右边的有效子矩形都不能包含,2,号点,所以需要修改上下边界,2,号点在,1,号点上方,因此要修改上边界,左边界,上边界,下边界,1,2,算法,1,继续扫描到,3,号点,又得到一个极大有效子矩形,如图所示,左边界,上边界,下边界,1,3,算法,1,因为,3,号点在,1,号点下方,所以要修改下边界。,左边界,上边界,下边界,1,3,算法,1,以此类推,可以得到所有以,1,号点为左边界的极大有效子矩形。,然后将左边界移动到,2,号点、,3,号点,横坐标的位置。开始扫描以,2,号点、

6、3,号点,为左边界的极大子矩形。,左边界,上边界,下边界,2,3,算法,1,遗漏的情况,前面的做法可以找出所有左边界覆盖了一个障碍点的极大子矩形,此外,还有两类遗漏的情况。,算法,1,遗漏的情况,一类是左边界与整个矩形的左边界重合,右边界覆盖一个障碍点的情况。,解决方法:用类似的方法从右向左扫描一次。,算法,1,遗漏的情况,另一类是左边界与整个矩形的左边界重合,且右边界也与整个矩形的右边界重合的情况。,解决方法:预处理时增加特殊判断。,算法,1,优劣分析,算法,1,的时间复杂度为,O(S,2,),,空间复杂度为,O(S),。,优点:利用了极大化思想,复杂度可以接受,编程实现简单。,缺点:使用

7、有一定的局限性,不适合障碍点较密集的情况。,算法,2,设计的目的和思路,因为算法,1,有使用的局限性,所以我们需要一种在障碍点很密集的时候仍能奏效的算法。,设计一种复杂度依赖于整个矩形面积的算法,说明:如果整个矩形面积很大,可以通过离散化处理来优化。,算法,2,悬线,有效竖线:除了两个端点外,不覆盖任何障碍点的竖直线段。,悬线:上端点覆盖了一个障碍点或达到整个矩形上端的有效竖线。,图中所示的线段均为悬线。,算法,2,悬线,每个悬线都与它底部的点一一对应。,矩形中的每一个点(矩形顶部的点除外)都对应了一个悬线。,悬线的个数,(N,1),M,算法,2,悬线与极大子矩形,如果把一个极大子矩形按,x,

8、坐标不同切割成多个与,y,轴平行的线段,则其中至少存在一个悬线。,Y,X,算法,2,悬线与极大子矩形,如果把一个悬线向左右两个方向尽可能移动,就能得到一个矩形,不妨称为这个悬线对应的矩形。,悬线对应的矩形不一定是极大子矩形,因为下边界可能还可以向下扩展。,设计算法,原理:所有悬线对应矩形的集合一定包含了极大子矩形的集合。,通过枚举所有的悬线,找出所有的极大子矩形。,算法规模:,悬线个数,(N,1)M,极大子矩形个数,悬线个数,算法,2,关键点,解决问题的关键:,对每个悬线的处理时间。,解决方法:,充分利用前面得到的信息。,算法,2,处理方法,具体方法:,设,Hi,j,为点,(,i,j,),对应

9、的悬线的长度。,Li,j,为点,(,i,j,),对应的悬线向左最多能够移动到的,位置,。,Ri,j,为点,(,i,j,),对应的悬线向右最多能够移动到的,位置,。,图示,Li,j,Ri,j,Hi,j,点,(,i,j,),考虑点,(,i,j,),对应的悬线与点,(i-1,j),对应的悬线的关系。,算法,2,递推关系,如果,(i,1,j),为障碍点,那么,如图所示,,(,i,j,),对应的悬线长度,1,,左右能移动到的位置是整个矩形的左右边界。,即,Hi,j,1,Li,j,=0,Ri,j=m,(i-1,j):,障碍点,(,i,j,):,当前点,Ri,j,Li,j,Hi,j,=1,算法,2,递推关系

10、如果,(i,1,j),不是障碍点,那么,如图所示,,(,i,j,),对应的悬线长度为,(i-1,j),对应的悬线长度,1,。,即,Hi,j,Hi-1,j+1,(i-1,j):,非障碍点,(,i,j,):,当前点,某个障碍,算法,2,递推关系,如果,(i,1,j),不是障碍点,那么,如图所示,,(,i,j,),对应的悬线左右能移动的位置要在,(i-1,j),的基础上变化。,Li-1,j,Li,j,=max,(i-1,j),左边第一个障碍点的位置,(,i,j,):,当前点,某个障碍,Li-1,j,Li,j,(i-1,j),算法,2,递推关系,同理,也可以得到,Ri,j,的递推式,Ri-1,j,R

11、i,j,=min,(i-1,j),右边第一个障碍点的位置,Li,j,Ri,j,Hi,j,点,(,i,j,),算法,2,优劣分析,算法,2,的时间复杂度为,O(NM),,空间复杂度为,O(S),。,优点:复杂度与障碍点个数没有直接关系。,缺点:障碍点少时处理较复杂,不如算法,1,两个不同的算法,算法,1,时间复杂度:,O(S,2,),空间复杂度:,O(S),优点:复杂度可以接受,编程实现简单,缺点:使用有一定的局限性,不适合障碍点较密集的情况。,算法,2,时间复杂度:,O(NM),空间复杂度:,O(S),优点:复杂度与障碍点个数没有直接关系。,缺点:障碍点少时因为要离散化处理,实际复杂度较高。,

12、推广,1,最大权值子矩形问题,最大权值子矩形问题,模型:在一个带权(正权)矩形中有一些障碍点,找出一个不包含障碍点的最大权值子矩形。,分析:在一个正权值的矩形中的最大权值子矩形一定是极大子矩形。所以,问题实际上可以依据极大化的思想,利用前面的方法解决。,推广,2,最大子正方形问题,最大子正方形问题,模型:在一个矩形中存在,S,个障碍点,要求找出最大的不包含障碍点的正方形。,分析:,在一个有障碍点的矩形中的最大有效子正方形一定是一个极大有效子正方形。,推广,2,最大子正方形问题,极大子正方形的性质:,每一个极大子正方形都至少被一个极大子矩形包含,且这个极大子正方形一定有两条不相邻的边与包含它的极

13、大子矩形的边重合。,推广,2,最大子正方形问题,解决方法,:,通过枚举每一个极大子矩形找出所有的极大子正方形。,每个极大子矩形对应的极大子正方形可能有多个,但大小都一样。,推广,2,最大子正方形问题,解决方法,:,通过枚举每一个极大子矩形找出所有的极大子正方形。,每个极大子矩形对应的极大子正方形可能有多个,但大小都一样。,推广,2,最大子正方形问题,解决方法,:,通过枚举每一个极大子矩形找出所有的极大子正方形。,每个极大子矩形对应的极大子正方形可能有多个,但大小都一样。,矩形类型变换,类型,1,矩形中的点都是两条垂直线段的交点,有效子矩形可以在边界包含障碍点。,类型,2,矩形中的点是单位方格,有效子矩形不能包含任何障碍点。,处理方法与类型,1,基本相同,要点回顾,极大化思想,最大子矩形问题,算法,2,算法,1,最大子正方形问题,最大权值子矩形问题,

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服