ZJULearning / nsg

Navigating Spreading-out Graph For Approximate Nearest Neighbor Search
MIT License
632 stars 150 forks source link

retset vector index issue #40

Open yangzq50 opened 11 months ago

yangzq50 commented 11 months ago

https://github.com/ZJULearning/nsg/blob/eceb09e2754d978b4c8b07e3248018987feb597a/src/index_nsg.cpp#L111C1-L123C49

118 行是否应改为 retset[L] ?之后 123 行只对前 L 个排序 这样的问题在这个文件中应该有四处?

yangzq50 commented 11 months ago

retset[L] 和 retset[i] 在这些地方应该是效果相同的,因为 if (id >= nd_) continue; 事实上不会发生,所有的 id 都是互异的、有效的(假如输入的kNN图满足所有出边互异且有效的性质) 那么, if (id >= nd_) continue; 这个判断是否可以删除?

fc731097343 commented 11 months ago

if (id >= nd_) continue;可以删除

fc731097343 commented 11 months ago

改为 retset[L]是可以的,这部分类似的循环逻辑都可以重写。