|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
29.05.2010, 22:15 | #1 |
Пользователь
Регистрация: 24.04.2009
Сообщений: 98
|
поиск кратчайшего пути
Здравствуйте,
Мне Я создала граф в xml и мне нужно реализовать алгоритм Дейкстры, или любой другой алгоритм поиска кратчайшего пути в графе. Я нашла алгоритм (в исходниках), но мне надо знать можно ли в си создать ссылку на xml документ, где описан граф, или наоборот: в xml файле создать ссылку на си, где описал алгоритм. Мне надо, чтоб рисовался граф, чтоб при клике на вершины, алгоритм находил кратчайший путь. Вот этот алгоритм в общем виде, мне надо, чтоб алгоритм искал кратчайший путь из любой вершины до заданной... }{Dijkstra'salgorithm} var a : array [1..20,1..20] of word; c, pred : array [1..20] of word; i, j, k, n, first, last, jn, kn : byte; f, g : text; min : word; begin assign(f,'in.txt'); reset(f); readln(f, n); for i := 1 to n do begin for j := 1 to n do read(f, a[i,j]); readln(f); end; readln(f, first, last); close(f); min := 32767; for j := 1 to n do if a[first,j] < min then begin min := a[first,j];jn := j;end; c[jn] := min; pred[jn] := first; j := jn; for i := 2 to n do begin min := 32767; for j := 1 to n do if c[j] <> 0 then begin for k := 1 to n do if (c[j] + a[j,k] < min)and(c[k] = 0) then begin min := c[j] + a[j,k];jn := j;kn := k;end; end; c[kn] := min;pred[kn] := jn; end; assign(g,'out.txt'); rewrite(g); if c[last] = 32767 then writeln(g,'N') else begin writeln(g,'Y'); write(g,first,' '); i := last;k := 1; while i <> first do begin a[1,k] := i; k := k + 1; i := pred[i]; end; for i := k -downto 1 do write(g,a[1,i],' '); writeln(g); writeln(g,c[last]); end; close(g); end. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Алгоритм Флойда. Поиск Кратчайшего пути. | Shady | Помощь студентам | 5 | 06.10.2014 18:29 |
поиск кратчайшего пути проходящий через ВСЕ города C++ | vo_sa | Общие вопросы C/C++ | 2 | 02.06.2009 21:21 |
Поиск кратчайшего пути в графе методом полного перебора в глубину. Метод ветвей и границ | Олинька | Помощь студентам | 1 | 24.12.2008 16:22 |
1) Поиск кратчайшего пути в графе методом полного перебора в ширину(очередь) | Serega123 | Помощь студентам | 3 | 30.10.2008 22:26 |