相关疑难解决方法(0)

在Java中按极角对点进行排序

我正在使用格雷厄姆扫描算法找到一组点的凸壳,我试图按极角对点进行排序,但我不知道怎么做(我已经按照他们的方式对点集进行了排序) Y坐标).

我已经写过的是这样的:

public double angle(Coord o, Coord a)
{
    return Math.atan((double)(a.y - o.y) / (double)(a.x - o.x));
}
Run Code Online (Sandbox Code Playgroud)

这里Coord是一流的,我有X和Y坐标为double.

我还看了Stack Overflow中的一篇类似文章,其中有人试图用C++实现这个角度,但我不明白qsqrt.我们在Java中有这样的东西吗?

qreal Interpolation::dp(QPointF pt1, QPointF pt2)
{
    return (pt2.x()-pt1.x())/qSqrt((pt2.x()-pt1.x())*(pt2.x()-pt1.x()) + (pt2.y()-pt1.y())*(pt2.y()-pt1.y()));
}
Run Code Online (Sandbox Code Playgroud)

如果有人能帮助我,我会很高兴的.

java grahams-scan

8
推荐指数
2
解决办法
1万
查看次数

标签 统计

grahams-scan ×1

java ×1