Модераторы: volvo877, Snowy, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Связный ориентированный граф 
:(
    Опции темы
CENTRALFORWARD
Дата 19.4.2008, 17:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 9.3.2008
Где: Пенза

Репутация: нет
Всего: нет



Имеется связный ориентированный граф. Берется любая вершина и необходимо определить все возможные пути из этой вершины. Необходимо вывести все цепочки возможных путей на экран.
Хотелось бы пример. Заранее спасибо.
PM MAIL ICQ   Вверх
pil69
Дата 21.4.2008, 15:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 16
Регистрация: 13.12.2007

Репутация: нет
Всего: нет



А как задается сам граф? В виде матрицы? Пример покажи
PM MAIL   Вверх
CENTRALFORWARD
Дата 22.4.2008, 07:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 9.3.2008
Где: Пенза

Репутация: нет
Всего: нет



Цитата(pil69 @ 21.4.2008,  15:45)
А как задается сам граф? В виде матрицы? Пример покажи

Матрицей смежности
PM MAIL ICQ   Вверх
Dobermann
Дата 25.4.2008, 20:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 992
Регистрация: 7.1.2008

Репутация: нет
Всего: 0



В подобной теме я привёл пример графа, который представляется матрицей смежности, каркас так же массивом....и + еще как раз в нем реализуется поиск в глубину. Вообщем тебе нужно в цикле сохранять ребра....сам цикл прогоняешь по всей матрице........








________________________________________________
и блин, пожалуйста восстановите мне кто-нибудь репу......хотя бы до 0 
PM   Вверх
Naruto05
Дата 26.4.2008, 14:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 26.4.2008

Репутация: нет
Всего: нет



попробуй использовать поиск в глубину, он быстр и удобен. Там просто каждый раз перед началом или в конце пишешь вывод массива.
{ c:массив, хранящий все пути}
{k - счётчик элементов с}
Procedure solve(x:word);
var
     i:integer;
begin 
         for i:=1 to k do begin
              write(c[i],' ');
         end;
         readln;
         
         for i:=1 to n do
              if (a[x,i]=1)and(b[i]) then begin
                  inc(k);c[k]:=i;b[i]:=false;
                  solve(i);
                  dec(k);b[i]:=true;
              end;
end;
a - таблица смежности
b - вектор булевского типа. обозначает, просмотрен ли элемент.
Я только прикинул процедуру, а там сам дальше разработаешь.
PM MAIL   Вверх
Dobermann
Дата 26.4.2008, 17:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 992
Регистрация: 7.1.2008

Репутация: нет
Всего: 0



ОГО!!!
А если у него матрица смежности 50х50.........
solve(i); - может быть ты не понял, но если процедура в теле её описания вызывает сама себя, то это уже рекурсия. И получится, что она будет обращаться сама к себе.............щас-щас.............(хотя бы при размере 15х15)............437893890380859375 раз!!!
CENTRALFORWARD если не передумал разобраться с этим, то выше приведенный мной пример развеит все опасения......
PM   Вверх
CENTRALFORWARD
Дата 27.4.2008, 07:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 9.3.2008
Где: Пенза

Репутация: нет
Всего: нет



Суть понятна, но мне нужен вывод примерно такой:
Условно, матрица 9 на 9 и возможные пути начиная с 9 вершины (без дублирования вершин):
1) 9 2 4 5
2) 9 2 5
3) 9 2 8 7 1 6 5
4) 9 2 8 7 5
5) 9 3 4 5
6) 9 8 7 1 6 5
7) 9 8 7 2 4 5
8) 9 8 7 2 5
9) 9 8 7 5
и т.д.
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi"
THandle
Rrader
volvo877

Запрещается!

1. Обсуждать и делится взломанными компонентами или программным обеспечением

2. Публиковать ссылки на варез

3. Оффтопить

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, THandle, Rrader, volvo877.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Object Pascal: кроссплатформенные технологии | Следующая тема »


 




[ Время генерации скрипта: 0.0434 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.