算法设计手册
关于这本书
编程挑战

石溪算法库

史蒂芬·斯杰纳
石溪大学
计算机科学系

1.6.2凸面外壳

问题输入 | 问题输出

输入输出


输入说明:一套S公司属于n个中的点d日-维度空间。

问题:找到包含的最小凸多边形所有要点S公司.

摘录自算法设计手册: 求一组点的凸壳是这个计算中最基本的有趣问题几何,就像最小生成树一样,是图算法中最基本的有趣问题。它出现了因为外壳可以快速捕获数据集的形状或范围的大致概念。

凸包也是许多(如果不是大多数)几何算法的第一个预处理步骤。例如,考虑求一组点的直径的问题,这是一对点的最大距离分开。直径将始终是凸包上两点之间的距离。这个O(n \lg n).计算直径的算法首先构造凸壳,然后对于每个外壳顶点,查找哪个其他外壳顶点离它最远。这种所谓的“旋转卡钳”方法可以有效地移动从一个外壳顶点到另一个。


启动位置

  • CGAL:计算几何算法库(C++)(等级10)
  • Qhull-高维凸壳程序(C)(等级8)
  • Java中的3D凸包算法(C)(等级8)
  • 生物几何阿尔法形状(C)(等级7)
  • LEDA-高效数据类型和算法库(C++)(等级7)
  • 克拉克森高维凸壳规范(C)(等级6)

  • 推荐图书

    计算几何:算法与应用作者:马克·德伯格、马克·范·克雷维尔德、马克·奥维马斯和O.施瓦茨科夫 C语言中的计算几何作者:Joseph O'Rourke 从P到NP的算法,第一卷:设计和效率作者:B.Moret和H.Shapiro
    算法简介作者:T.Cormen和C.Leiserson,R.Rivest和C.Stein

    相关问题


      
    简化多边形
      
    排序
      
    旅行推销员问题
      
    Voronoi图



    本页上次修改日期为2008-07-10.
    网址:www.algorist.com