Простая реализация для обнаружения циклов в ориентированном графе в C # - PullRequest
7 голосов
/ 21 июня 2011

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

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

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

Ответы [ 2 ]

2 голосов
/ 21 июня 2011

Запустите DFS на G и проверьте наличие уступов.

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

2 голосов
/ 21 июня 2011

Check QuickGraph - в нем реализовано множество алгоритмов, и это довольно приятная библиотека для использования.

...