2015-10-13 2 views
0

Мне дается алгоритм, который должен найти длину кратчайшего цикла в ненаправленном графе с длинами единичных краев. Я должен показать, что алгоритм не всегда работает, предоставляя контрпример. У меня возникают проблемы с примером, который может показать, что этот алгоритм не всегда работает.Длина кратчайшего цикла в ненаправленном графике


Алгоритм:

  • ли в глубину поиска, отслеживания уровня каждой вершины.
  • Каждый раз, когда встречается задний край, вычисляйте длину цикла и сохраняйте его, если он меньше самого короткого, который ранее видел.

Любые предложения/помощь будет оценена

+1

хорошо, все это довольно приятно до сих пор. Но я не вижу никакого кода для фактического алгоритма ... – Paul

+1

Каков алгоритм? –

+0

@ ErickG.Hagstrom обновил вопрос – user3055141

ответ

1

Посмотрите на этот график с заданным обходе:

enter image description here

Когда вы сталкиваетесь backedge e->a вы отмечаете цикл с длиной 5 и для e->b - цикл с длиной 4. Однако ответ 3, полученный по циклу a-b-e.

Смежные вопросы