Изменения

Перейти к: навигация, поиск
Поиск ближайших соседей в слое
V = <tex>\emptyset</tex> <font color="green">// посещённые вершины </font>
'''while''' C != <tex>\emptyset</tex>
u = {q1 | <tex>\forall</tex> q2 <tex>\in</tex> C, |q - q1| <= |q - q2|}<font color="green">// Ближайшая к q вершина из C </font> f = {q1 | <tex>\forall</tex> q2 <tex>\in</tex> W, |q - q1| >= |q - q2|}<font color="green">// Самая дальняя от к q вершина из W </font>
'''if''' |u - q| > |f - q|
'''break''' <font color="green">// Мы в локальном минимуме. </font>
'''if''' e <tex>{\notin}</tex> V
V = V <tex>\bigcup</tex> e
f = {q1 | <tex>\forall</tex> q2 <tex>\in</tex> W, |q - q1| >= |q - q2|}<font color="green">// Самая дальняя от к q вершина из W </font>
'''if''' |e - q| < |f - q| or |W| < ef
C = C <tex>\bigcup</tex> e
W = W <tex>\bigcup</tex> e
if |W| > ef
W = W \ {q1 | <tex>\forall</tex> q2 <tex>\in</tex> W, |q - q1| >= |q - q2|}f
'''return''' W
120
правок

Навигация