小编Nav*_*loo的帖子

在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万
查看次数

如何找到循环不变的java

我试图找到循环的不变量(例如在下面的代码中)我真的不知道如何找到一般的不变量。任何人都可以帮助我如何找到不变量,并帮助我找到以下代码的不变量吗?谢谢

public static int div(int a, int b)
{
   int q = 0;
   while(a >= b)
   {
      a -= b;
      q++;
   }

   return q;
}
Run Code Online (Sandbox Code Playgroud)

java invariants loop-invariant

1
推荐指数
1
解决办法
5329
查看次数

标签 统计

java ×2

grahams-scan ×1

invariants ×1

loop-invariant ×1