Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Новые рефераты » Програма визначення досяжності населеного пункту в системі односторонніх доріг

Реферат Програма визначення досяжності населеного пункту в системі односторонніх доріг





знайдений

x=new int [n];

int * t;// T [i] - довжина найкоротшого шляху від вершини s в i

t=new int [n];

el * h;// H [i] - вершина, що передує i-й вершині

/ / на найкоротшому шляху

h=new el [n];

/ / Ініціалізіруем початкові значення масивів

int u;// Лічильник вершин

for (u=0; u

{

t [u]=infinity;// Спочатку все найкоротші шляхи з s в i

/ / рівні нескінченності

x [u]=0;// І немає найкоротшого шляху ні для однієї вершини

}

int v;


h [s]. v=0;// S - початок шляху, тому цій вершині нічого не передує

t [s]=0;// Найкоротший шлях з s в s дорівнює 0

x [s]=1;// Для вершини s знайдений найкоротший шлях

v=s;// Робимо s поточної вершиною

while (1)

{

/ / Перебираємо всі вершини, суміжні v, і шукаємо для них найкоротший шлях

for (u=0; u

{(a [v] [u] == 0) continue;// Вершини u і v несуміжні (x [u] == 0 && t [u]> t [v] + a [v] [u]) / / Якщо для вершини u ще

/ / знайдений найкоротший шлях

/ / і новий шлях в u коротше ніж

/ / старий, то

{

t [u]=t [v] + a [v] [u];// Запам'ятовуємо більш коротку довжину шляху в

/ / масив t і

h [u]. v=v;// Запам'ятовуємо, що v-> u частина найкоротшого

/ / шляху з s-> u

}


}


/ / Шукаємо з усіх довжин некратчайшіх шляхів найкоротший

int w=infinity;// Для пошуку найкоротшого шляху

v=- 1;// Наприкінці пошуку v - вершина, в яку буде

/ / знайдений новий найкоротший шлях. Вона стане

/ / поточної вершиною

for (u=0; u

{

if (x [u] == 0 && t [u]

/ / шлях і якщо довжина шляху в вершину u менше

/ / вже знайденої, то

{

v=u;// Поточної вершиною стає u-я вершина

w=t [u];

}

}

if (v == - 1)

{

Memo1-> Lines-> Add («Ні шляху з вершини»);

break;

}

if (v == g) / / Найден найкоротший шлях,

{/ / виводимо його

Memo1-> Lines-> Add («Шлях з мінімальною величиною з вершини« + IntToStr (s) + »в вершину« + IntToStr (g) + »(у зворотному порядку)») ;

u=g;> Image1-> Canvas-> Pen-> Color=RGB (0, 0, 255); k=0; (u!=s)


Назад | сторінка 9 з 10 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Завдання пошуку найкоротшого шляху
  • Реферат на тему: Розробка та реалізація алгоритму Флойда і Беллмана-Форда для пошуку найкоро ...
  • Реферат на тему: Пошук найкоротшого шляху між парами вершин в орієнтованому і неориентирован ...
  • Реферат на тему: Пошук найкоротшого шляху в лабіринті
  • Реферат на тему: Пошук найкоротшого шляху в графі