凸包

✍ dations ◷ 2025-11-10 09:38:29 #凸包
在一个实数向量空间 V {displaystyle V} 中,对于给定集合 X {displaystyle X} ,所有包含X的凸集的交集 S {displaystyle S} 被称为 X {displaystyle X} 的凸包。X {displaystyle X} 的凸包可以用 X {displaystyle X} 内所有点 ( x 1 , … , x n ) {displaystyle (x_{1},ldots ,x_{n})} 的线性组合来构造。在二维欧几里得空间中,凸包可想象为一条刚好包着所有点的橡皮圈。逐次将点加入,然后检查之前的点是否在新的凸包上。由于每次都要检查所有之前的点,时间复杂度为 O ( n 2 ) {displaystyle O(n^{2})} 。首先由一点必定在凸包的点开始,例如最左的一点 A 1 {displaystyle A_{1}} 。然后选择 A 2 {displaystyle A_{2}} 点使得所有点都在 A 1 A 2 {displaystyle A_{1}A_{2}} 的右方,这步骤的时间复杂度是 O ( n ) {displaystyle O(n)} ,要比较所有点以 A 1 {displaystyle A_{1}} 为原点的极坐标角度。以 A 2 {displaystyle A_{2}} 为原点,重复这个步骤,依次找到 A 3 , A 4 , . . . , A k , A 1 {displaystyle A_{3},A_{4},...,A_{k},A_{1}} 。这总共有 k {displaystyle k} 步。因此,时间复杂度为 O ( k n ) {displaystyle O(kn)} 。由最底的一点 A 1 {displaystyle A_{1}} 开始(如果有多个这样的点,那么选择最左边的),计算它跟其他各点的连线和x轴正向的角度,按小至大将这些点排序,称它们的对应点为 A 2 , A 3 , . . . , A n {displaystyle A_{2},A_{3},...,A_{n}} 。这里的时间复杂度可达 O ( n log ⁡ n ) {displaystyle O(nlog {n})} 。考虑最小的角度对应的点 A 3 {displaystyle A_{3}} 。若由 A 2 {displaystyle A_{2}} 到 A 3 {displaystyle A_{3}} 的路径相对 A 1 {displaystyle A_{1}} 到 A 2 {displaystyle A_{2}} 的路径是向右转的(可以想象一个人沿 A 1 {displaystyle A_{1}} 走到 A 2 {displaystyle A_{2}} ,他站在 A 2 {displaystyle A_{2}} 时,是向哪边改变方向),表示 A 3 {displaystyle A_{3}} 不可能是凸包上的一点,考虑下一点由 A 2 {displaystyle A_{2}} 到 A 4 {displaystyle A_{4}} 的路径;否则就考虑 A 3 {displaystyle A_{3}} 到 A 4 {displaystyle A_{4}} 的路径是否向右转……直到回到 A 1 {displaystyle A_{1}} 。这个算法的整体时间复杂度是 O ( n log ⁡ n ) {displaystyle O(nlog {n})} ,注意每点只会被考虑一次,而不像Jarvis步进法中会考虑多次。这个算法由葛立恒在1972年发明。它的缺点是不能推广到二维以上的情况。将点按x坐标的值排列,再按y坐标的值排列。选择x坐标为最小值的点,在这些点中找出y坐标的值最大和y坐标的值最小的点。对于x坐标为最大值也是这样处理。将两组点中y坐标值较小的点连起。在这条线段下的点,找出它们之中y坐标值最大的点,又在它们之间找x坐标值再最小和最大的点……如此类推。时间复杂度是 O ( n log ⁡ n ) {displaystyle O(nlog {n})} 。将点集X分成两个不相交子集。求得两者的凸包后,计算这两个凸包的凸包,该凸包就是X的凸包。时间复杂度是 O ( n log ⁡ n ) {displaystyle O(nlog {n})} 。选择最左、最右、最上、最下的点,它们必组成一个凸四边形(或三角形)。这个四边形内的点必定不在凸包上。然后将其余的点按最接近的边分成四部分,再进行快包法(QuickHull)。

相关

  • 远东远东(英语:Far East),是西方国家所发明对亚洲使用的地理概念。以西欧为中心,东欧、东南欧、北非、安纳托利亚称为“近东”,东非、黎凡特、阿拉伯半岛、中亚一带称为“中东”,西伯利
  • 生物动力农法华德福教育 生物动力农法 人智学医学生物动力农法(Biodynamic agriculture),又称为自然动力农法或是生机互动农业,是一种另类的农业形式,非常近似于有机农业,但包含多种来自人智学
  • 本顿县本顿县 (Benton County, Oregon)是美国俄勒冈州西部的一个县。面积1,759平方公里。根据美国2000年人口普查,共有人口78,153人。县治科瓦利斯 (Corvallis)。成立于1847年12月2
  • 格洛斯特郡柏克莱坐标:51°41′28″N 2°27′32″W / 51.691°N 2.459°W / 51.691; -2.459贝克利(Berkeley,/ˈbɑːrkliː/)是英格兰格洛斯特郡的一个小镇和民政教区,位于塞文河东岸和M5高速公
  • 雅克·桑特雅克·桑特(法语:Jacques Santer,1937年5月18日-),生于瓦瑟比利希,1979年任财政大臣,1984年7月任卢森堡首相兼国务和财政大臣。1995年至1999年任欧洲联盟委员会主席。
  • 赵淳生赵淳生(1938年11月-),中国机械工程专家。南京航空航天大学教授。生于湖南衡山。1961年毕业于南京航空学院飞机系,1984年获法国巴黎高等机械学院工程力学博士学位。2005年当选为中
  • 威廉·琼斯杯国际篮球邀请赛威廉·琼斯杯国际篮球邀请赛(英语:William Jones Cup International Tournament)是1978年起在台湾举办的国际性篮球赛事,每年举行一次,(也曾因故停办两次)。本赛事是为了纪念1970年
  • 台中县台中县为中华民国已废止的行政区,位于台湾中部的台中彰化都会区内,以人口计曾为台湾第三大县,下辖3县辖市5镇13乡,县政府设于丰原市。2009年6月23日,行政院核准“台中县市合并改
  • 重子列表重子由三个夸克组成,相较之下介子则是由夸克-反夸克对所组成。:1232重子与介子都属于强子,意即单纯由夸克或同时由夸克和反夸克所组成的粒子。重子的英文名称“baryon”是来自
  • 成三问成三问(1418年-1456年),字谨甫(근보)、讷翁(눌옹),号梅竹轩(매죽헌)。本贯昌宁成氏。,朝鲜王朝前期学者,政治家。训民正音八位编者之一,亦是死六臣之一。他是都总管成胜之子,生于洪州