平面凸包:为了包含几个元素,由最外面的元素连接形成的最小凸多边形
斜率逼近法:
1.寻找y值最小的点,从水平方向开始,逆时针旋转寻找第一个k>0且k最小的点
(ps:若有多个点符合目标要求,则选取最远的点,保证划定面积最大)
2.一直找到p1=pm为止
pps:平面凸包必然存在
方法漏洞:若k趋向于无穷则该题无解
Jarvis算法
不严谨的数学描述:一条直线过一点A,使得其他所有点在直线同一侧,然后顺时针或逆时针抡这根棍子,直到抡到除A以外的一点B。
遇到多个点一定要选取离A最远的点
方法漏洞:由于人为设置可以导致时间复杂度爆炸
Graham算法
求极角:
atan2(a[i].y,a[i].x)
选择y值最小,若y值相同则选择x值最小的点,按照极角大小进行排序
连接时若现左拐再右拐则出栈
标签:逆时针,最小,凸包,问题,漏洞,平面,最远 来源: https://www.cnblogs.com/EVANGELION-01/p/15306037.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。