Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.04.2009, 23:40   #1
ZhooZhik
 
Регистрация: 07.01.2008
Сообщений: 8
По умолчанию Обход графа в ширину.

Вот процедура обхода. Не могу понять зачем массив S задан. Объясните пожалуйста. И если не сложно напишите коментрии к процедуре. А я то не могу до конца разобраться. Заранее спасибо.
Код:
  var
 n, k, i, j, nk :integer;
 c : array[1..100,1..100] of integer;
 s: array [1..100] of integer;
 o : array [1..100] of integer;

procedure width(x:integer);
 var
  y,p : integer;
 begin
  o[1]:=x; k:=1; p:=0;
  s[x]:=nk;
  while p<>k do begin
   p:=p+1; y:=o[p];
     for i:=1 to n do
         if c[y,i] > 0 then 
            if s[i] = 0 then
            begin
               	k:=k+1; o[k]:=i; s[i]:=nk;
            end;
  end;
end;
ZhooZhik вне форума Ответить с цитированием
Старый 06.04.2009, 08:35   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Это неполный код, но похоже на то что в S вписывается флаг, показывающий достижение границы скажем "графа"...
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обход бинарного дерева в ширину. Delphi 7. ZhooZhik Помощь студентам 4 01.12.2011 02:48
Обход графа в глубину coptor Общие вопросы Delphi 0 09.12.2008 22:50
Поиск возможных путей графа RammFan Общие вопросы Delphi 2 19.06.2008 10:45
Размещение графа по уровням Маришка Помощь студентам 2 10.01.2008 22:50
Деление графа на куски Tito Помощь студентам 1 22.12.2007 22:59