##算法分析:求最近点对问题(c++)
1、 准备部分:
对于最近点问题,需要将问题代码化,所以要先创建一个点类,来使得计算使用时候更加方面,
class Points
{
public:
float x;
float y;
};
因为会多次计算距离,需要一个计算两点之间距离的函数。
float Distance(Points p1,Points p2)//求两点距离函数
{
return sqrt((p1.x-p2.x)*(p1.x-p2.x)+(p1.y-p2.y)*(p1.y-p2.y));
}
但这里改进将开根号放在外面可以使得计算量减少。
float Distance(Points p1,Points p2)//求两点距离函数
{
return (p1.x-p2.x)*(p1.x-p2.x)+(p1.y-p2.y)*(p1.y-p2.y);
}
2、 穷举法
算法思想:
遍历每个个点,
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)