1、问题定义:
(1)输入:平面上的n个点的集合Q ;输出: CH(Q),即Q的凸包
(2)Q的凸包:是一个最小凸多边形 P,Q的点在P上或者在P内
(3)凸多边形P: 连接P内任意两点的边都在P内
2、基本思想:
(1)当沿着凸包逆时针漫游时,总是向左转;
(2)在极坐标系下按照极角大小排列,然后按逆时针方向漫游点集,去除非凸包顶点(非左转点)
3、伪代码:
![](https://www.icode9.com/i/ll/?i=780585bd191241eb942ff7b963ce4862.png?,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAZ2FzaWM=,size_20,color_FFFFFF,t_70,g_se,x_16)
4、时间复杂性分析:T(n)=O(nlogn)
![](https://www.icode9.com/i/ll/?i=fe693f251ade42eaa112388dc5a73945.png?,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAZ2FzaWM=,size_20,color_FFFFFF,t_70,g_se,x_16)
标签:逆时针,hull,凸多边形,凸包,极角,convex,漫游
来源: https://blog.csdn.net/gasic/article/details/120972765