Алгоритм по поиску цикла в графе
От: malkolinge Украина  
Дата: 17.08.10 12:15
Оценка:
Коллеги,
есть ли алгоритм , который максимально быстро поможет получить ответ на вопрос есть ли на графе цикл или нету.
Нутром чую что это прогулянная теория графов....-)
Re: Алгоритм по поиску цикла в графе
От: dilmah США  
Дата: 17.08.10 12:46
Оценка: 1 (1)
если граф обычный, неориентированный, то делаешь поиск в ширину, и сохраняешь множество тех вершин в которых уже был. Если вершина в которую пришел, уже была посещена ранее, то значит есть цикл.
Re[2]: Алгоритм по поиску цикла в графе
От: malkolinge Украина  
Дата: 17.08.10 12:50
Оценка:
Здравствуйте, dilmah, Вы писали:

D>если граф обычный, неориентированный, то делаешь поиск в ширину, и сохраняешь множество тех вершин в которых уже был. Если вершина в которую пришел, уже была посещена ранее, то значит есть цикл.

Спасибо, задача на самом деле в оригинале такая : есть в системе расширени, которые зависят от других расширений.... нужно найти и предупредить пользователя о цикличной зависимости расширений _)
Re[3]: Алгоритм по поиску цикла в графе
От: VsevolodC Россия  
Дата: 17.08.10 12:55
Оценка: 2 (1)
Здравствуйте, malkolinge, Вы писали:

M>Здравствуйте, dilmah, Вы писали:


D>>если граф обычный, неориентированный, то делаешь поиск в ширину, и сохраняешь множество тех вершин в которых уже был. Если вершина в которую пришел, уже была посещена ранее, то значит есть цикл.

M>Спасибо, задача на самом деле в оригинале такая : есть в системе расширени, которые зависят от других расширений.... нужно найти и предупредить пользователя о цикличной зависимости расширений _)

искать по словами "топологическая сортировка"
Re[3]: Алгоритм по поиску цикла в графе
От: dilmah США  
Дата: 17.08.10 13:06
Оценка:
D>>если граф обычный, неориентированный, то делаешь поиск в ширину, и сохраняешь множество тех вершин в которых уже был. Если вершина в которую пришел, уже была посещена ранее, то значит есть цикл.
M>Спасибо, задача на самом деле в оригинале такая : есть в системе расширени, которые зависят от других расширений.... нужно найти и предупредить пользователя о цикличной зависимости расширений _)

зависимости -- это стандартная задача с _ориентированным_ графом. Строится ориентированный граф зависимостей. Циклы в нем ищет http://ru.wikipedia.org/wiki/Топологическая_сортировка
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.