xとyのプロパティを持つオブジェクトがある場合、距離式を使用せずに配列のどのポイントが最も近いかをどのようにして知ることができますか?Javaの距離式を使用せずにオブジェクトに最も近いポイントを見つける
1
A
答えて
3
一部のバリアント式を使用せずに正確な結果を得ることはできません。しかし、あなたはすることができます事実の後に平方根を取っていないことによっていくつかのサイクルを保存します。比較は有効なままです。
1
DY R = DX +あなたが正確な距離を気にしない場合、あなたはおそらく、あなたの元のx、y座標の間の差を取ることができるし、発注点をご用意しています。
//The following code does not return the closest point, //but it somewhat does what you need and complies with //your requirement to not use the distance formula //it finds the sum of x and y displacements Point destination=... Point nearestPoint= points.get(0); for (Point p : points){ closenessCoefficient= Math.abs(destination.x-p.x) + Math.abs(a.destination-p.y); nearestPoint=Math.Min(closenessCoefficient, nearestPoint); } return nearestPoint;
0
最も近いネイバーを正確に見つけなければならない場合は、少なくとも2つの点について距離式を評価する方法はありません。すでに指摘したように、距離平方根r^2 = x^2 + y^2を単に比較すると、ほとんどの場合、高価なsqrtを評価することは避けられます。
ただし、大きな距離の範囲に広がっている点数が多い場合は、ここに示すhttp://www.flipcode.com/archives/Fast_Approximate_Distance_Functions.shtmlのような近似値を使用することができます。次に、近似によって与えられた最も近い点についてのみ、実際の距離式を計算することができます。乗算にもコストがかかるアーキテクチャでは、これは大きな違いを生む可能性があります。現代のx86/x86-64アーキテクチャでは、このことはあまり重要ではありません。
関連する問題
- 1. 最も近い運転距離を見つける
- 2. 距離行列の5つの最も近いサンプルのインデックスを見つける
- 3. クリックしたポイントに最も近い項目を見つける
- 4. 2つのポイント間の距離と距離が最も離れています
- 5. SQL関数と距離の間の距離が最も近い
- 6. Pythonで2つのgpsポイント間の距離を見つける
- 7. ポイント間の最短距離を見つける最速の方法
- 8. lat-longとポイントとの間の距離を見つける
- 9. Javaの距離式を使用する
- 10. 場所からの最小総距離のポイントを見つけるアルゴリズム
- 11. Pythonリスト内のポイント間の最短距離を見つけるクリーナーメソッド?
- 12. 最も近い値を見つける
- 13. 最も近いCCSpriteを見つける
- 14. Flash AS3が手作業に最も近いポイントを見つける
- 15. ユーザが指定した場所に最も近いポイントを見つける
- 16. gDistance rgeosを使用して2つのSpatialPointsDataframesの間の最近接距離を見つける?
- 17. Python:距離と一緒にポイントとリターンポイントの間のすべてのペアごとの距離を見つける
- 18. マトリックス+ matlabで距離dの近傍を見つけよう
- 19. 表に最小距離を見つける
- 20. 緯度と経度を使用してパスに最も近いポイントを見つけるアルゴリズム
- 21. 最後の点を除いて最も近い点を見つけるLibGDX Java
- 22. iPhoneのLocal MeasurementSystemを使用して距離を見つける
- 23. Matlab:最小距離を見つける手助け
- 24. 配列のポイントから3つの最も近い座標を見つける方法Java
- 25. 2つのGPSポイント間の横方向距離を見つける
- 26. サンプルのサブセットに最も近いネイバーを見つける
- 27. 他の点に最も近い点を見つける
- 28. 別の値に最も近い値を見つける
- 29. 現在の時刻に最も近いjava millisecondsを見つける
- 30. opencvの輪郭/オブジェクト間の距離を見つける
x距離とy距離を追加できませんか? –
No. dxが1、dyが1の点が1.414の距離にあります。 1.5のdxおよび0の点は、1.5の距離を有する。 –
O.K.、それは意味があります –