Реферат: Графы. Решение практических задач с использованием графов (С++)

else

if(Nnew[j]){ // вершина не просмотрена

St[k]=j; // добавляем ее к пройденному пути

Nnew[j]=false; // просмотрена

gamilton_path(k+1); //строим путь дальше

Nnew[j]=true; //возвращаемся назад и строим другие циклы

}

}

int main(){

fscanf(fi,"%d",&n); //Считываем количество вершин

St = new int[n];

Nnew = new int[n];

for(int i = 0;i < n;i++)Nnew[i]=1; // Нет просмотренных вершин

graph = new bool*[n];

for(int i=0;i<n;i++){

graph[i] = new bool[n]; //выделяем память под строку

for(int j=0;j<n;j++){

fscanf(fi,"%d",&graph[i][j]);

}

}

Nnew[vertex]=false; //первая вершина уже просмотрена

St[0]=vertex; // вершина с которой начали проход

gamilton_path(1);//параметр означает количество пройденных вершин

fcloseall();

return(0);

}

2.Эйлеровым циклом называется цикл в графе, проходящий через все ребра графа ровно один раз. Для данного графа найти эйлеров цикл, если он существует.

#include <iostream.h>

#include <stdio.h>

К-во Просмотров: 795
Бесплатно скачать Реферат: Графы. Решение практических задач с использованием графов (С++)