凸包

✍ dations ◷ 2025-04-12 04:29:35 #凸包
在一个实数向量空间 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)。

相关

  • 乙肝病毒乙型肝炎病毒(英语:Hepatitis B virus)简称乙肝病毒(HBV)。是一种DNA病毒,属于嗜肝DNA病毒科(hepadnavividae)。根据目前所知,HBV就只对人和猩猩有易感性,引发乙型病毒性肝炎疾病。完
  • 悲剧公地悲剧(英语:Tragedy of the commons),或共有财悲歌,是一种涉及个人利益与公共利益对资源分配有所冲突的社会陷阱。这个字起源于英国作家威廉·佛司特·洛伊(英语:William Forste
  • 先天性碘缺乏综合征先天性碘缺乏症候群(又称矮呆病、克汀病、呆小病)是指因产妇对碘的摄取不足,使得婴儿先天性缺乏甲状腺激素(先天性甲状腺机能低下症),而导致严重阻碍身心发展的一种症状。一般通过
  • 五险一金五险一金,指中国大陆地区劳动者所享有的社会保险福利的一种通俗化称呼,其中“五险”是指包括养老保险、医疗保险、工伤保险、失业保险、生育保险在内的五种社会保险,“一金”是
  • 伊莎贝·雨蓓伊莎贝尔·安妮·玛德莲·于佩尔(法语:Isabelle Anne Madeleine Huppert,法文发音: ) ,1953年3月16日-),法国电影演员,自1971年开始,她已演出超过100部电影。她曾被凯撒奖提名16次,是
  • 表面上皮间质肿瘤表面上皮间质肿瘤(英语:Surface epithelial-stromal tumor),是指一类卵巢肿瘤,它可能是良性或恶性肿瘤。这类肿瘤产生于卵巢表面上皮(英语:ovarian surface epithelium)或异常的子宫
  • 恒星时恒星时是天文学和大地测量学标示的天球子午圈值,由于借用了时间的计量单位,所以常被误解为是一种时间单位。恒星时是根据地球自转来计算的,它的基础是恒星日(比地球的自转周期短
  • 拨弦乐器拨弦乐器是用手指或拨子拨弦而发音的乐器总称。
  • 攻击机攻击机(Attack aircraft),是一种在中、近距离对地面、水面目标攻击用的军用飞机,也是担任密接支援陆军的要角。现代的多用途战机基本上都能取代攻击机,但仍存在专门的攻击机。除
  • 中国年号索引中国是历史上最早使用年号纪年的地区。第一个年号出现在西汉汉武帝时期,年号为建元(前140年—前135年)。此前的帝王只有年数,没有年号。此后使用年号的传统一直延续到20世纪初期