الگوریتم پیدا کردن دور در گراف

کد:
function tagit(somenode):boolean

  Result=true

  if somenode is tagged then Result=false

  else

    tag(somenode)

    for each child of somenode do Result=Result and tagit(child)

  end if

  return Result

end function



function IsTree(somegraph):boolean

 return tagit(one of the nodes of somegraph)

end function