Курсовая работа: Гамильтоновы графы и сложность отыскания гамильтоновых циклов

В случае 2) возможны следующие случаи:

a) В графе G существует дуга (xr , x 1 ), и поэтому найден гамильтонов цикл.

b) Дуга (xr , x 1 ) не существует и не может быть получен никакой гамильтонов цикл.

В случаях (1) и (2b) следует прибегнуть к возвращению , в то время как в случае (2a) можно прекратить поиск и напечатать результат (если требуется найти только один гамильтонов цикл), или (если нужны все такие циклы) произвести печать и прибегнуть к возвращению.

Возвращение состоит в удалении последней включенной вершины xr из S , после чего остается множество S = {x 1, a , b , c , … , xr -1 }, и добавлении к S первой возможной вершины, следующей за xr , в столбце xr -1 матрицы M . Если не существует никакой возможной вершины, делается следующий шаг возвращения и т.д.

Поиск заканчивается в том случае, когда множество S состоит только из вершины x 1 и не существует никакой возможной вершины, которую можно добавить к S , так что шаг возвращения делает множество S пустым. Гамильтоновы циклы, найденные к этому моменту, являются тогда всеми гамильтоновыми циклами, существующими в графе.

Рассмотрим пример поиска гамильтонова цикла в графе переборным методом Робертса и Флореса.

Пример:

"2"

1) S = {1}

2) S = {1, 2}

3) S = {1, 2, 3}

4) S = {1, 2, 3, 4}

5) S = {1, 2, 3, 4, 5} - Г 4→3 4→5

6) S = {1, 2, 3, 4}

7) S = {1, 2, 3} 3→1 3→2 3→4

8) S = {1, 2}

9) S = {1}

"3"

10) S = {1, 3} 3→2

11) S = {1, 3, 2} 2→1

12) S = {1, 3} 2→3

13) S = {1, 3, 4} 3→4 4→5

14) S = {1, 3, 4, 5, 4} 5→нет

15) S = {1, 3, 4}

16) S = {1, 3}

17) S = {1}

"5"

К-во Просмотров: 591
Бесплатно скачать Курсовая работа: Гамильтоновы графы и сложность отыскания гамильтоновых циклов