Трудно дать вам полный ответ, не видя весь ваш код, но я думаю, что это поможет.Обратите внимание, что ссылки приведены для неориентированных графиков.
Я думаю, вам следует разделить задачу на две части:
1. Поиск всех циклов в графике (сохраните ихв хеш-таблице или аналогичном)
2. Определение того, какой из этих циклов содержит определенный узел.
Решение для 1: Для первогошаг, есть много алгоритмов онлайн, как этот , который будет работать с незначительными изменениями или этот , который считает количество циклов, и вы можете изменить его, чтобы сохранить циклыон находит.
Решение для 2: Это зависит от того, как вы сохраняете циклы, но это простой алгоритм поиска.
Обратите внимание, что это решение не является оптимальным, если вы хотите найти ответ только для одного узла один раз, но это действительно хорошо, если вы хотите найти число циклов для любого данного узла и любогоданное время.