2019-01-16
阅读量:
670
python如何更新最近邻
我们有我们的邻居列表(最多应该有一个k的长度),我们想要一个给定距离的项目添加一个项目。首先,我们将检查邻居的长度是否为k。如果它少了,我们将项目添加到它,无论距离如何(因为我们需要在开始拒绝项目之前将列表填充到k)。如果没有,我们将检查该项目的距离是否短于列表中具有最大距离的项目。如果是这样,我们将使用新项目替换最大距离的项目。
为了更快地找到最大距离项,我们将保持列表按升序排序。因此,列表中的最后一项将具有最大距离。我们将用新项目替换它,我们将再次排序。
为了加快这个过程,我们可以实现一个插入排序,我们在列表中插入新项目,而不必对整个列表进行排序。虽然这个代码很长,虽然很简单,但是会让教程陷入困境。
filter_none
brightness_4def
UpdateNeighbors(neighbors, item, distance, k):
if(len(neighbors) > distance):
# If yes, replace the last
# element with new item
neighbors[-1] =
[distance, item["Class"]];
neighbors =
sorted(neighbors);
return
neighbors;






评论(0)


暂无数据
推荐帖子
0条评论
0条评论
0条评论