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

}

if(count%2==1)return 0; // степень нечетная

}

return 1; // все степени четные

}

void eiler_path(Node **gr){ //Построение цикла

Node *S = init();// Стек для пройденных вершин

int v=vertex;// 1я вершина (произвольная)

int u;

push(S,v); //сохраняем ее в стек

while(S){ //пока стек не пуст

v = peek(S); // текущая вершина

if(!gr[v]){ // если нет инцидентных ребер

v=pop(S); fprintf(fo,"%d\ ",v); //выводим вершину

}else {

u=gr[v]->inf; push(S,u); //проходим в следующую вершину

del(gr[v],u); del(gr[u],v); //удаляем пройденное ребро

}

}

}

int main(){

int n; // Количество вершин

int zn;// Текущее значение

fscanf(fi,"%d",&n); graph=new Node*[n];

for(int i=0;i<n;i++)graph[i]=NULL;

for(int i=0;i<n;i++) // заполняем массив списков

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

fscanf(fi,"%d",&zn);

if(zn) add(graph[i],j);

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