- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
问题:给定平面上n个点,找其中的一对点,使得在n个点所组成的所有点对中,该点对间的距离最小。 说明: 严格来讲,最接近点对可能多于一对,为简便起见,我们只找其中的一对作为问题的解。 一个简单的做法是将每一个点与其他n-1个点的距离算出,找出最小距离的点对即可。该方法的时间复杂性是T(n)=n(n-1)/2+n=O(n2),效率较低。 已经证明,该算法的计算时间下界是Ω(nlogn)。 第一步筛选:如果最近点对由S1中的p3和S2中的q3组成,则p3和q3一定在划分线L的距离d内。 第二步筛选:考虑P1中任意一点p,它若与P2中的点q构成最接近点对的候选者,则必有distance(p,q)<d。满足这个条件的P2中的点一定落在一个d×2d的矩形R中 ①、⑤用了O(n)时间; ②用了2T(n/2)时间 ③、⑥用了常数时间 ④在预排序的情况下用时O(n) 第一步筛选:如果最近点对由S1中的p3和S2中的q3组成,则p3和q3一定在划分平面L的距离d内。 第二步筛选:考虑P1中任意一点p,它若与P2中的点q构成最接近点对的候选者,则必有distance(p,q)<d。满足这个条件的P2中的点定落在一个d×2d×2d的长方体R中 三维空间最接近点问题 分治法解决二维空间最接近点问题 选取一垂直线l:x=m来作为分割直线。其中m为S中各点x坐标的中位数。由此将S分割为S1和S2。 递归地在S1和S2上找出其最小距离d1和d2,并设d=min{d1,d2},S中的最接近点对或者是d,或者是某个{p,q},其中p∈S1且q∈S2。 R中的点具有稀疏性 P2中任何2个S中的点的距离都不小于d。由此可以推出矩形R中最多只有6个S中的点。 在分治法的合并步骤中最多只需要检查6×n/2=3n个候选点对! R中最多只有6个S中的点 证明:将矩形R的长为2d的边3等分,将它的长为d的边2等分,由此导出6个(d/2)×(2d/3)的矩形。 若矩形R中有多于6个S中的点,则由鸽舍原理易知至少有一个(d/2)×(2d/3)的小矩形中有2个以上S中的点。 设u,v是位于同一小矩形中的2个点,则 distance(u,v)d。这与d的意义相矛盾。 * 鸽舍原理(也称抽屉原理) 把n+1个球,放入n个抽屉,则一定有一个抽屉内至少有2个球。 P2中与点p最接近这6个候选点的纵坐标与p的纵坐标相差不超过d. 因此,若将P1和P2中所有S中点按其y坐标排好序,则对P1中所有点,对排好序的点列作一次扫描,就可以找出所有最接近点对的候选者。对P1中每一点最多只要检查P2中排好序的相继6个点。 如何确定要检查哪6个点 double cpair2(S) { n=|S|; if (n 2) return ?; 1、m=S中各点x间坐标的中位数; 构造S1和S2; //S1={p∈S|x(p)=m}, S2={p∈S|x(p)m} 2、d1=cpair2(S1); d2=cpair2(S2); 3、dm=min(d1,d2); 4、设P1是S1中距垂直分割线l的距离在dm之内的所有点组成的集合; P2是S2中距分割线l的距离在dm之内所有点组成的集合; 将P1和P2中点依其y坐标值排序; 并设X和Y是相应的已排好序的点列; 5、通过扫描X以及对于X中每个点检查Y中与其距离在dm之内的所有点(最多6个)可以完成合并; 当X中的扫描指针逐次向上移动时,Y中的扫描指针可在宽为2dm的区间内移动; 设dl是按这种扫描方式找到的点对间的最小距离; 6、d=min(dm,dl); return d; } O(n) 2T(n/2) 常数时间 O(n) 常数时间 O(n) 复杂度分析 选取一垂平面l:y=m来作为分割平面。其中m为S中各点y坐标的中位数。由此将S分割为S1和S2。 递归地在S1和S2上找出其最小距离d1和d2,并设d=min{d1,d2},S中的最接近点对或者是d,或者是某个{p,q},其中p∈S1且q∈S2。 分治法解决三维空间最接近点问题 重要观察结论:P2中任何2个S中的点的距离都不小于d。由此可以推出长方体R中最多只有24个S中的点。 在分治法的合并步骤中最多只需要检24×n/2=12n个候选点对。 R中最多只有24个S中的点 distance(u,v)d。这与d的意义相矛盾。 由d的意义可知, P2 中任何2个S中的点的距离都不小于d. 由此可以推出长方体R中最多只有24个S 中的点. 事实上,我们可以将长方体C的长为2d的两条边分别3等分和4等分,将它的长为d的边2等分, 由此导出24
您可能关注的文档
最近下载
- 2025年上海市崇明区中考二模英语试题(含答案).pdf VIP
- 第4课 乡愁(余光中)课件(共19张PPT) 2024-2025学年统编版语文九年级上册.pptx VIP
- 计算机网络网络安全PPT(完整版).pptx VIP
- 2025年邮政职业技能鉴定考试(储汇业务员·高级)历年参考题库含答案详解(5卷).docx VIP
- 供应室去污区课件.pptx VIP
- 三年级快乐阅读社团活动教案.docx VIP
- 预决算管理制度.docx VIP
- 《大学生恋爱心理》PPT课件.ppt VIP
- GB50017-2017钢结构设计标准.doc VIP
- 2025-2026学年初中信息科技冀教版2024七年级全一册-冀教版2024教学设计合集.docx
文档评论(0)