IPB
ЛогинПароль:

> ВНИМАНИЕ!

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

> Алгоритм определения компонент двусвязности Графа
сообщение
Сообщение #1


Гость






Помогите, нужна программа по определению компонент двусвязности Графа.
Есть программа на СИ, может кто то поможет ее переделать?
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Знаток
****

Группа: Пользователи
Сообщений: 419
Пол: Мужской

Репутация: -  6  +


это c#

program svyazniye_componenti;
const nVert = 100;
nAdj = 1000;

type TVert = array[1..nVert]of integer;
tAdj = array[1..nAdj]of integer;

var f : text;
n : integer;
adj : TAdj;
fst ,nbr ,vtx ,mark : TVert;
i ,j : integer;
yes : boolean;

procedure init(var yes : boolean);
var i ,j ,m : integer;
begin
for i := 1 to n do
for j := 1 to nbr[i] do
begin
yes := false;
for m := 1 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 component(x ,count : integer);
var i ,v : integer;
begin
mark[x] := count;
for i := 1 to nbr[x] do
begin
v := adj[fst[x] + i];
if mark[v] = 0 then component(v,count);
end;
end;

procedure conn;
var v ,count : integer;
begin
for v := 1 to n do mark[v] := 0;
count := 0;
for v := 1 to n do
if mark[v] = 0 then
begin
count := count + 1;
component(v,count);
end
end;

begin
assign(f ,'sv_comp.in');reset(f);
read(f,n);
fst[1] := 0;
for i := 1 to n do
begin
read(f ,vtx[i]);
read(f ,nbr[i]);
for j := 1 to nbr[i] do
read(f ,adj[fst[i] + j]);
fst[i + 1] := fst[i] + nbr[i];
end;
close(f);
assign(f ,'sv_comp.out');rewrite(f);
init(yes);
if not yes then
begin
writeln(f ,'error');
close(f);
exit;
end;
conn;
for i := 1 to n do write(f ,vtx[i] : 3);writeln(f);
for i := 1 to n do write(f ,mark[i] : 3);
close(f);
end.
это не перевод твоего кода ,это я на винте нарыл.

с форматом входных данных разберешься?


--------------------
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Michael_Rybak
*****

Группа: Пользователи
Сообщений: 1 046
Пол: Мужской
Реальное имя: Michael_Rybak

Репутация: -  32  +


Цитата(virt @ 5.12.2006 21:39) *

это c#


Ну с# так c# wub.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме
KPEBETKA   Алгоритм определения компонент двусвязности Графа   4.12.2006 22:54
мисс_граффити   как задан граф хотя бы написала бы...   5.12.2006 0:11
КРЕВЕТК!!   как вам угодно   5.12.2006 2:08
спермотоксикоз   Пжлста, вот, то, что есть на СИ:using System; usin…   5.12.2006 3:42
Гость   Не поможете ?   5.12.2006 23:03
мисс_граффити   ты думаешь, это реально прочитать? вот такое нагро…   5.12.2006 23:30
Michael_Rybak   Если расскажешь алгоритм, могу сказать, правильно …   5.12.2006 23:37
virt   это c# program svyazniye_componenti; const nVert …   6.12.2006 2:39
Michael_Rybak   это c# Ну с# так c# :wub:   6.12.2006 22:54
Michael_Rybak   program svyazniye_componenti; это не перевод тво…   7.12.2006 1:02
Гость   virt, ну, если не трудно, объясни, пожалуйста, т.к…   6.12.2006 19:29
Гость   Пожалуйста, надо уже срочно...   6.12.2006 22:36
Гость   Ну подскажи немного... оч надо, пожалуйста   7.12.2006 0:46
Гость   Горю!!   7.12.2006 4:01
Michael_Rybak   В этом разделе решают вместе. Код, который ты кину…   7.12.2006 4:35


 Ответить  Открыть новую тему 
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 4.05.2024 23:03
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name