回答
看看阿帕奇ArrayRealVector它实现了RealVector接口。
那里有L-1,L-inf和euklidian规范以及n维向量的metrik的实现。
曼哈顿距离很容易用Math.abs(x1-x2)+Math.abs(y1-y2)
实现。
虽然可以使用Point2D.distance(x1,y1,x2,y2)
方法为欧氏距离,计算它是不难的:
double dx = x1-x2, dy = y1-y2;
Math.sqrt(dx*dx+dy*dy);
如果必须扩展为更高的维度,通过坐标作为数组,并使用循环来计算平方和。
我觉得这个函数的2参数版本更简洁。我想知道为什么它是这样设计的。 – Wug
我想我不能使用Point2D,因为日期的维度是未定义的,它可以是任何东西。感谢曼哈顿距离;) – user1796942
@ user1796942:呃......日期?也许你的意思是数据?另外,你可以使用零作为其他参数。 – Wug
有些车轮太小,以至于无法重新创建。
public class Distances
{
private Distances() {}
public static euclidean(double a, double b)
{
return Math.sqrt(a * a + b * b);
}
public static manhatten(double a, double b)
{
return Math.abs(a) + Math.abs(b);
}
}
用法:
double x1 = 15.0, y1 = 15.0;
double x2 = 25.5, y2 = 37.25;
Distances.euclidean(x1 - x2, y1 - y2); // order does not matter
Distances.euclidean(y2 - y1, x1 - x2); // distance is the same regardless
Distances.manhatten(x1 - x2, y1 - y2);
您应该如果你正在计算规范,不要命名你的班'距离';) – stg
- 1. 稀疏矩阵中聚类元素的距离度量标准
- 2. 使用DBSCAN中的Mahalanobis等替代距离度量标准
- 3. 什么是地点的最佳距离度量标准
- 4. 的Java:距离度量算法设计
- 5. 计算边界框距离Java中的纬度/经度坐标一定距离
- 6. Scipy.cluster.hierarchy.fclusterdata +距离度量
- 7. 经度,纬度和距离的Grails gorm标准
- 8. 还有其他有用的相似度或距离度量标准吗?
- 9. 算法的距离度量
- 10. 距离度量的信息
- 11. iPhone中的角度和距离坐标
- 12. GPS坐标距离测量
- 13. 是否有编辑距离度量标准不依赖于订单?
- 14. 使用欧几里德距离度量查询距离
- 15. 距离度量的组合优化
- 16. 提高GPS测量距离的精度
- 17. 测量坐标的经度和纬度坐标之间的距离
- 18. WordNet - 用于计算距离度量的哪个Java API
- 19. 坐标之间的距离 - 角度> 180(Processing/Java)
- 20. 通过添加度量距离获取新的GPS坐标
- 21. 测量距离
- 22. 距离度量度量对K近邻维数的影响?
- 23. 海洋纬度经度距离海岸的距离
- 24. NLTK协议与距离度量
- 25. Kademlia路由表和距离度量
- 26. 距离度量启发式信息性
- 27. iOS接近度和GPS测量距离
- 28. SURF的度量标准
- 29. 计算距离坐标公里与Java
- 30. 距离的程度地球
这只需要两个1班的OP需要很多代码... – Wug
如果你不想要,你不必导入整个班级至。但是如果你必须处理n维向量,它包含了很多有用的方法。你可以采取方法来计算规范和/或距离,这就是为什么我要链接到源代码 – stg