Изменения

Перейти к: навигация, поиск
Поиск ближайших соседей в слое
===Поиск ближайших соседей в слое===
Жадно идём по уровню в сторону запроса.
'''SearchLayersearchLayer'''(q, ep, ef, lc)''':''' <font color="green">// Ввод: запрос q, входная точка ep, искомое количество ближайших соседей q ef, номер слоя lc</font>
<font color="green">// Вывод: ef ближайших соседей q</font>
candidates = new TreeSet() <font color="green">// вершины Вершины упорядочены по возрастанию расстояния до request . </font>
result = new TreeSet()
visited = new HashSet()
furthest = result.getMax()
'''if''' distance(current, q) > distance(furthest, q)
'''break''' <font color="green">// мы Мы в локальном минимуме, все остальные вершины в кандидатах ещё дальше. </font>
'''for''' v : смежные с current вершины
'''if''' !visited.contains(r)
120
правок

Навигация