Простая реализация обнаружения циклов в ориентированном графе на C#

Не могли бы вы помочь мне с простой реализацией для обнаружения циклов в ориентированном графе на C#.

Я читал об алгоритмах, но я хотелось бы найти что-то уже реализованное, очень простое и короткое.

Меня не волнует производительность, потому что размер данных ограничен.


person Homam    schedule 21.06.2011    source источник
comment
Тот, кто проголосовал за закрытие, должен оставить комментарий, почему. Это кажется совершенно правильным вопросом   -  person Kieren Johnstone    schedule 21.06.2011


Ответы (2)


Посмотрите QuickGraph — в нем реализовано множество алгоритмов, и это довольно удобная библиотека.

person Mike Goatly    schedule 21.06.2011

Запустите DFS на G и проверьте наличие обратных границ.

В каждом узле, который вы расширяете, просто проверьте, не находится ли он уже на текущем пути.

person Patrick    schedule 21.06.2011