3个版本
0.1.3 | 2020年5月22日 |
---|---|
0.1.2 |
|
0.1.1 | 2020年5月22日 |
0.1.0 | 2020年5月22日 |
在算法分类中排名第2098
10KB
179 行
点云
一个用于在Rust中查找最近邻居的库。
使用方法
将以下内容添加到您的Cargo.toml
[dependencies]
knn = "0.1.3"
并按如下方式使用
extern crate knn;
use knn::PointCloud;
fn main() {
let manhattan = |p: &[f64;2], q: &[f64;2]| {(q[0] - p[0]).abs() + (q[1] - p[1]).abs()};
let mut pc = PointCloud::new(manhattan);
let coords = vec![[1.0, 1.0], [2.0, 2.0], [10.0, 5.0], [11.0, 15.0]];
for i in 0..coords.len() {
pc.add_point(&coords[i]);
}
let d = pc.get_nearest_n(&[2.1, 2.1], 2);
println!("{:?}", d)
// output :
// [(0.20000000000000018, [2.0, 2.0]), (2.2, [1.0, 1.0])]
}
有关更新和详细的文档,请参考这里
lib.rs
:
KNN
knn
提供了一种快速方法来查找高维数据的精确k个最近邻居。同时支持自定义距离函数。