K
是i64
,points
是Vec<Vec<i64>>
,用于表示n-dim空间中的点。
let mut centroids: Vec<Vec<i64>> =
rand::seq::sample_iter(&mut rand::thread_rng(),
points.iter(),
K as usize).unwrap();
rand::thread_rng()
是否已移入函数范围,因此在函数结束时被删除了? (使整个事情不会泄漏记忆)
如果没有,有没有办法在不单独声明的情况下这样做?让我回答这个问题的是drop
函数的工作方式,因为它几乎采用了同样的想法。