select
{ начало обхода – произвольная вершина }
{ помещаем v в структуру данных T }
Repeat
{ извлекаем вершину из структуры данных T }
if
then{ проверяем, посещали ли мы уже эту вершину }
yield
{ возвращаем её в качестве очередной пройденной вершины… }
{ … и помечаем её как пройденную }
for
do
if
then
{ помещаем w в структуру данных T, отметим её позже }
End if