У меня возникли проблемы с созданием псевдокода для обнаружения цикла BFS, который вернет истину, только если исходный узел s находится в цикле. Прямо сейчас у меня есть это:
Queue = {s} s is the source node
Visited is empty
while Queue is nonempty do
set u to first node in queue, remove from queue
if s is neighbor to u then return true
for every neighbor v of u do
if v is not in queue or visitedthen
add v to end of queue
add u to visited
return false
Я знаю, что мой алгоритм неверен, но у меня проблемы с его исправлением