Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
1 / 1 / 0
Регистрация: 13.12.2010
Сообщений: 4

Фундоментальные циклы графа

13.12.2010, 13:30. Показов 1637. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Нужна программа на C\C++.по фундоментальным циклам графа,есть прога подобная на паскале но она у меня почемуто не работает...хотя пример взят из книжки где автор утверждает что она работает))) вот она помогите кто чем сможет(((
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
Program GraphCycle; {Фундаментальные циклы графа} 
uses CRT,DOS; 
Const 
nVertex=100; {Максимальное количество вершин} 
nAdjacent=1000; {Максимальная длина списка смежности} 
Туре 
TypeVertex=array[I..nVertex] of Integer; 
TypeAdjacent=array[1..nAdjacent] of Integer; 
{ Текстовый файл } 
{ Количество вершин } 
{ Количество вершин в стеке циклов} 
Var 
f :Text;
n :Integer;
nC :Integer;
Adj :TypeAdjacent; { Список смежности графа } 
Fst :TypeVertex; { Указатели вершин списка смежности} 
Nbr :TypeVertex; { Количество вершин в списке 
смежности } 
Vtx :TypeVertex; { Список вершин графа } 
Mark :TypeVertex; { Номера компонент для вершин графа} 
С :TypeVertex; { Стек выделения циклов графа } 
В :TypeVertex; { Признаки основных и обратных ребер 
прохода в глубину } 
jC :Integer; { Счетчик числа циклов } 
count:Integer; { Счетчик меток вершин } 
Procedure Init( var yes :Boolean ); 
{ Переназначение меток вершин } 
{ их порядковыми номерами в списке смежности } 
{ yes - признак правильной структуры списка смежности } 
Var 
i,j,m -.Integer; 
begin 
for i:=l to n do 
for j:=l to Nbr[i] do begin 
yes:=FALSE; 
for m:=l to n do 
if Adj[Fst[i]+j]=Vtx[m] then begin 
yes:=TRUE; 
Adj[Fst[i]+j]:=m; 
break; 
end; 
if not yes then exit; 
end; 
end; 
Procedure PrintCycle( x:Integer; var С:TypeVertex; 
nC:Integer); {Печать цикла из стека} 
begin 
Write(ffjC,')'); 
repeat 
Write(f,Vtx[C[nC]]:3); 
nC:=nC-l; 
until C[nC]=x; 
Writeln(f); 
end; 
Procedure Cycle( x,у:Integer ); 
Var 
i,v :Integer; 
begin 
 
count:=count+l; 
Mark[x]:=count; 
for i:=l to Nbr[x] do begin 
v:=Adj[Fst[x]+i]; 
nC:=nC+l; C[nC]:=v; 
if Mark[v]=0 then Cycle(v,x) 
else if (Mark[v]<Mark[x]) and (v<>y) then begin 
(Обратное ребро в пройденную вершину - найден цикл} 
PrintCycle(v,C,nC); 
end; 
nC:=nC-l; 
end; 
end; 
Procedure DepthCycle; {Проход в глубину за циклами) 
Var 
v:Integer; 
begin 
jC:=O; {Счетчик числа циклов} 
nC:=0; {С - стек циклов пустой } 
count:=0; {Номер метки вершины} 
for v:=l to n do Mark[v]:=0; 
for v:=l to n do if Mark[v]=0 then begin 
nC:=nC+l; C[nC]:=v; 
Cycle(v,0); 
nC:=nC-l; 
end; 
end; 
Var {Main} 
i,j :Integer; 
yes .-Boolean; 
begin {Main} 
Assign(f,'Cycle.in' ) ; 
Reset(f);{Файл открыт для чтения} 
{Ввод списка смежности} 
Read(f,n); {Количество строк в списке} 
Fst[l]:=0; {Указатель начала первой строки списка} 
for i:=l to n do begin 
Read(f,Vtx[i]); {Метка вершины} 
Read(f,Nbr[i]); {Количество вершин в списке} 
for j:=l to Nbr[i] do Read(f,Adj[Fst[i]+j]); 
{Список смежных вершин} 
Fst[i+1]:=Fst[i]+Nbr[i]; {Указатель начала следующей 
строки в списке} 
 end; 
Close(f); 
Assign(f,'Cycle.out' ) ; 
Rewrite(f); {Файл открыт для записи} 
Init(yes); 
if not yes then begin 
WriteLn(f,'Плохая структура смежности графа!'); 
Close(f) ; 
exit; 
end; 
DepthCycle; 
Close(f); 
end. {Main}
1
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
13.12.2010, 13:30
Ответы с готовыми решениями:

Циклы графа
День добрый. Имеется задача: найти фундаментальные циклы графа. Есть рабочий код на с++. Переписал на php, и возникли проблемы с заходом...

Найти цепи и циклы графа из матрицы инцидентности
Как программно найти все цепи и циклы графа из матрицы инцидентности?

Найти все циклы графа в виде списка списков вершин с точностью до начальной вершины
Доброго времени суток. Есть неориентированный граф ((ab) (ad) (ah) (ag) (bc) (ch) (de) (ef) (fh) (gh)). Найти все циклы графа в виде...

4
2 / 1 / 0
Регистрация: 14.12.2010
Сообщений: 3
15.12.2010, 17:24
А не подскажите, что за книжечка такая, где была опубликована эта программа?
0
1 / 1 / 0
Регистрация: 13.12.2010
Сообщений: 4
15.12.2010, 19:02  [ТС]
Книжки Дискретные алгоритмы.Автор Иванов
0
2 / 1 / 0
Регистрация: 14.12.2010
Сообщений: 3
16.12.2010, 14:07
спасибо большое
0
1 / 1 / 0
Регистрация: 13.12.2010
Сообщений: 4
29.12.2010, 17:53  [ТС]
никто ни чем не помог всем спасибо сам роздуплил
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
29.12.2010, 17:53
Помогаю со студенческими работами здесь

Нахождение фактора графа и остова графа для некоторого произвольного графа (5-6 вершин)
Форумчане прошу помощь в выполнение задания по деск. мат. Задание: Нахождение фактора графа и остова графа для некоторого произвольного...

Циклы с условием, циклы с переменной, вложенные циклы
С условием 1. Ввести натуральное число N и вычислить сумму всех чисел фибоначчи меньших N. Предусмотреть защиту от ввода...

Создание графа по матрице и поиск кратчайшего пути из одного графа в другой
Доброго времени суток. Задали задание по матрице составить граф и написать функции 1 функция находит количество путей из графа допустим...

По заданной матрице смежности простого графа построить каркас этого графа с использованием поиска в ширину
Задание: заданно матрицу смежности простого графа. Построить каркас этого графа с использованием поиска вширь. Помогите написать...

Обход графа в ширину для определения всех вершин графа, находящихся на фиксированном расстоянии от данной вершины
Реализуйте обход графа в ширину для определения всех вершин графа, находящихся на фиксированном расстоянии d от данной вершины. HELP


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru