fbpx
维基百科

凸包

在一个实数向量空間中,对于给定集合,所有包含X的凸集交集被称为凸包

凸包(Convex hull):彈性繩帶的類比。

的凸包可以用内所有点线性组合来构造。

在二维欧几里得空间中,凸包可想象為一條剛好包著所有點的橡皮圈。

演算法

增量式算法

逐次將點加入,然後檢查之前的點是否在新的凸包上。由於每次都要檢查所有之前的點,時間複雜度為 

包裹法(Jarvis步进法)

首先由一點必定在凸包的點開始,例如最左的一點 。然後選擇 點使得所有點都在 的右方,這步驟的時間複雜度是 ,要比較所有點以 為原點的極坐標角度。以 為原點,重覆這個步驟,依次找到 。這總共有 步。因此,時間複雜度為 

葛立恒(Graham)扫描法

 

由最底的一點 開始(如果有多个这样的点,那么选择最左边的),計算它跟其他各點的連線和x軸正向的角度,按小至大將這些点排序,稱它們的對應點為 。這裡的時間複雜度可達 

考慮最小的角度對應的點 。若由  的路徑相對  的路徑是向右轉的(可以想象一個人沿 走到 ,他站在 時,是向哪邊改變方向),表示 不可能是凸包上的一點,考慮下一點由  的路徑;否則就考慮  的路徑是否向右轉……直到回到 

這個演算法的整體時間複雜度是 ,注意每點只會被考慮一次,而不像Jarvis步进法中會考慮多次。

這個演算法由葛立恆在1972年發明。[1]它的缺點是不能推廣到二維以上的情況。

單調鏈

將點按x坐標的值排列,再按y坐標的值排列。

選擇x坐標為最小值的點,在這些點中找出y坐標的值最大和y坐標的值最小的點。對於x坐標為最大值也是這樣處理。將兩組點中y坐標值較小的點連起。在這條線段下的點,找出它們之中y坐標值最大的點,又在它們之間找x坐標值再最小和最大的點……如此類推。

時間複雜度是 

分治法

將點集X分成兩個不相交子集。求得兩者的凸包後,計算這兩個凸包的凸包,該凸包就是X的凸包。時間複雜度是 

快包法(Akl-Toussaint启发式)

選擇最左、最右、最上、最下的點,它們必組成一個凸四邊形(或三角形)。這個四邊形內的點必定不在凸包上。然後將其餘的點按最接近的邊分成四部分,再進行快包法(QuickHull)。

各种星形多面体的凸包

應用

參考

  1. ^ Graham, R.L. (1972). An Efficient Algorithm for Determining the Convex Hull of a Finite Planar Set. Information Processing Letters 1, 132-133
  • Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein. Introduction to Algorithms, Second Edition. MIT Press and McGraw-Hill, 2001. ISBN 0262032937. Pages 955–956 of section 33.3: Finding the convex hull.
  • The Convex Hull of a 2D Point Set or Polygon, by Dan Sunday(页面存档备份,存于互联网档案馆

參見

外部連結

凸包, 在一个实数向量空間v, 对于给定集合x, 所有包含x的凸集的交集s, 被称为x, convex, hull, 彈性繩帶的類比, bigcap, subseteq, subseteq, atop, mathrm, convex, 的可以用x, 内所有点, ldots, 的线性组合来构造, left, left, right, lbrack, rbrack, right, 在二维欧几里得空间中, 可想象為一條剛好包著所有點的橡皮圈, 目录, 演算法, 增量式算法, 包裹法, jarvis步进法, 葛立恒, gr. 在一个实数向量空間V V 中 对于给定集合X X 所有包含X的凸集的交集S S 被称为X X 的凸包 凸包 Convex hull 彈性繩帶的類比 S X K V K i s c o n v e x K S bigcap X subseteq K subseteq V atop K mathrm is convex K X X 的凸包可以用X X 内所有点 x 1 x n x 1 ldots x n 的线性组合来构造 S j 1 n t j x j x j X j 1 n t j 1 t j 0 1 S left left sum j 1 n t j x j right x j in X sum j 1 n t j 1 t j in lbrack 0 1 rbrack right 在二维欧几里得空间中 凸包可想象為一條剛好包著所有點的橡皮圈 目录 1 演算法 1 1 增量式算法 1 2 包裹法 Jarvis步进法 1 3 葛立恒 Graham 扫描法 1 4 單調鏈 1 5 分治法 1 6 快包法 Akl Toussaint启发式 2 各种星形多面体的凸包 3 應用 4 參考 5 參見 6 外部連結演算法 编辑增量式算法 编辑 逐次將點加入 然後檢查之前的點是否在新的凸包上 由於每次都要檢查所有之前的點 時間複雜度為O n 2 O n 2 包裹法 Jarvis步进法 编辑 首先由一點必定在凸包的點開始 例如最左的一點A 1 A 1 然後選擇A 2 A 2 點使得所有點都在A 1 A 2 A 1 A 2 的右方 這步驟的時間複雜度是O n O n 要比較所有點以A 1 A 1 為原點的極坐標角度 以A 2 A 2 為原點 重覆這個步驟 依次找到A 3 A 4 A k A 1 A 3 A 4 A k A 1 這總共有k k 步 因此 時間複雜度為O k n O kn 葛立恒 Graham 扫描法 编辑 由最底的一點A 1 A 1 開始 如果有多个这样的点 那么选择最左边的 計算它跟其他各點的連線和x軸正向的角度 按小至大將這些点排序 稱它們的對應點為A 2 A 3 A n A 2 A 3 A n 這裡的時間複雜度可達O n log n O n log n 考慮最小的角度對應的點A 3 A 3 若由A 2 A 2 到A 3 A 3 的路徑相對A 1 A 1 到A 2 A 2 的路徑是向右轉的 可以想象一個人沿A 1 A 1 走到A 2 A 2 他站在A 2 A 2 時 是向哪邊改變方向 表示A 3 A 3 不可能是凸包上的一點 考慮下一點由A 2 A 2 到A 4 A 4 的路徑 否則就考慮A 3 A 3 到A 4 A 4 的路徑是否向右轉 直到回到A 1 A 1 這個演算法的整體時間複雜度是O n log n O n log n 注意每點只會被考慮一次 而不像Jarvis步进法中會考慮多次 這個演算法由葛立恆在1972年發明 1 它的缺點是不能推廣到二維以上的情況 單調鏈 编辑 將點按x坐標的值排列 再按y坐標的值排列 選擇x坐標為最小值的點 在這些點中找出y坐標的值最大和y坐標的值最小的點 對於x坐標為最大值也是這樣處理 將兩組點中y坐標值較小的點連起 在這條線段下的點 找出它們之中y坐標值最大的點 又在它們之間找x坐標值再最小和最大的點 如此類推 時間複雜度是O n log n O n log n 分治法 编辑 將點集X分成兩個不相交子集 求得兩者的凸包後 計算這兩個凸包的凸包 該凸包就是X的凸包 時間複雜度是O n log n O n log n 快包法 Akl Toussaint启发式 编辑 選擇最左 最右 最上 最下的點 它們必組成一個凸四邊形 或三角形 這個四邊形內的點必定不在凸包上 然後將其餘的點按最接近的邊分成四部分 再進行快包法 QuickHull 各种星形多面体的凸包 编辑多面体名称 凸包小星形十二面体 正二十面体大十二面体 正二十面体大星形十二面体 正十二面体大二十面体 正十二面体應用 编辑圖象處理 模式識別 地理信息系統參考 编辑 Graham R L 1972 An Efficient Algorithm for Determining the Convex Hull of a Finite Planar Set Information Processing Letters 1 132 133Thomas H Cormen Charles E Leiserson Ronald L Rivest and Clifford Stein Introduction to Algorithms Second Edition MIT Press and McGraw Hill 2001 ISBN 0262032937 Pages 955 956 of section 33 3 Finding the convex hull The Convex Hull of a 2D Point Set or Polygon by Dan Sunday 页面存档备份 存于互联网档案馆 參見 编辑Caratheodory定理 Delaunay三角化外部連結 编辑一個展示這些演算法如何運作的Java Applet Convex Hull Kin Yin Li QuickHull 介紹 页面存档备份 存于互联网档案馆 Incremental 增量法 介紹 页面存档备份 存于互联网档案馆 Jarvis March Gift Wripping 介紹 页面存档备份 存于互联网档案馆 取自 https zh wikipedia org w index php title 凸包 amp oldid 71770280, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。