Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
Архив форумов ЦИТФорума
Море(!) вопросов - Море(!) ответов
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 
Как правильно задавать вопросы

Алгоритм Дейкстры

 
Перейти:  
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Программирование
Предыдущая тема :: Следующая тема  
Автор Сообщение
Mumrik



Зарегистрирован: 15.06.2002
Сообщения: 3

СообщениеДобавлено: Сб Июн 15 2002 23:19    Заголовок сообщения: Алгоритм Дейкстры Ответить с цитатой

Уважаемые дамы и господа, помогите, пожалуйста. Нужна блок-схема алгоритма Дейкстры для поиска кратчайшего пути в графе.
У кого есть, отправте на mkob@rambler.ru или mytyshi@mail.ru Заранее благодарен.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Дядя Вася



Зарегистрирован: 14.08.2002
Сообщения: 39
Откуда: Новосибирск

СообщениеДобавлено: Вт Июн 18 2002 10:26    Заголовок сообщения: Re: Алгоритм Дейкстры Ответить с цитатой

Че есть ... квадратики и ромбики можешь и сам нарисовать Smile))
Деpжи цитату:
============================================================ .. В ориентированной, неориентированной или смешанной (т. е.
такой, где часть дорог имеет одностороннее движение) сети V найти
кратчайший путь из заданной вершины i во все остальные вершины.
Решение (Дейкстpа, 1959 г.)
Алгоритм использует три массива из N (= числу вершин сети)
чисел каждый. Первый массив A содержит метки с двумя значения:
0 (вершина еще не рассмотрена) и 1 (вершина уже рассмотрена);
второй массив B содержит расстояния - текущие кратчайшие рас-
стояния от до соответствующей вершины; третий массив с содержит
номера вершин - k-й элемент С[k] есть номер предпоследней вершины
на текущем кратчайшем пути из Vi в Vk. Матрица расстояний D[i,k] задает
длины дуге D[i,k]; если такой дуги нет, то D[i,k] присваивается большое число
Б, равное "машинной бесконечности".
Теперь можно описать

* Алгоритм Дейкстры *
1 (инициализация). В цикле от 1 до N заполнить нулями массив
A; заполнить числом i массив C; перенести i-ю строку матрицы
D в массив B,
A[i]:=1; C[i]:=0 (i - номер стартовой вершины)
2 (общий шаг). Hайти минимум среди неотмеченных (т. е. тех k, для
которых A[k]=0); пусть минимум достигается на индексе j, т. е. B[j]B[j]+D[j,k], то (B[k]:=B[j]+D[j,k]; C[k]:=j)
(Условие означает, что путь Vi ... Vk длиннее, чем путь Vi...Vj Vk).
(Если все A[k] отмечены, то длина пути от Vi до Vk равна B[k]. Теперь
надо) перечислить вершины, входящие в кратчайший путь).
3 (выдача ответа). (Путь от Vi до Vk выдается в обратном порядке
следующей процедуройSmile
3.1. z:=C[k];
3.2. Выдать z;
3.3. z:=C[z]. Если z = О, то конец,
иначе перейти к 3.2.

Для выполнения алгоритма нужно N раз просмотреть массив B
из N элементов, т. е. алгоритм Дейкстры имеет квадратичную
сложность: O(n2).
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Показать сообщения:   
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Программирование Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2002 phpBB Group
Русская поддержка phpBB

 

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 495 6608306, ICQ 232284597
Пресс-релизы — pr@citforum.ru
Послать комментарий
Информация для авторов
This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2006 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...