Теми рефератів
Авіація та космонавтика Банківська справа Безпека життєдіяльності Біографії Біологія Біологія і хімія Біржова справа Ботаніка та сільське гос-во Бухгалтерський облік і аудит Військова кафедра Географія
Геодезія Геологія Держава та право Журналістика Видавнича справа та поліграфія Іноземна мова Інформатика Інформатика, програмування Історія Історія техніки
Комунікації і зв'язок Краєзнавство та етнографія Короткий зміст творів Кулінарія Культура та мистецтво Культурологія Зарубіжна література Російська мова Маркетинг Математика Медицина, здоров'я Медичні науки Міжнародні відносини Менеджмент Москвоведение Музика Податки, оподаткування Наука і техніка Решта реферати Педагогіка Політологія Право Право, юриспруденція Промисловість, виробництво Психологія Педагогіка Радіоелектроніка Реклама Релігія і міфологія Сексологія Соціологія Будівництво Митна система Технологія Транспорт Фізика Фізкультура і спорт Філософія Фінансові науки Хімія Екологія Економіка Економіко-математичне моделювання Етика Юриспруденція Мовознавство Мовознавство, філологія Контакти
Українські реферати та твори » Математика » Алгоритм Дейкстри

Реферат Алгоритм Дейкстри

Категория: Математика
додається x i *, то припущення, що l (x i *) дорівнює довжині найкоротшого шляху x i S 1 , виконується при кожній ітерації. Звідси по індукції випливає, що алгоритм дає оптимальну відповідь.

Якщо потрібно знайти найкоротші шляхи між s та всіма іншими вершинами повного зв'язного графа з n вершинами, то в процесі роботи алгоритму виконуються операцій складання та порівняння на кроці 2 і ще операцій порівняння на кроці 3. Крім того, при здійсненні кроків 2 і 3 необхідно визначити, які вершини тимчасові, а для цього потрібно ще операцій порівняння. Ці величини є верхніми границями для числа операцій, необхідних при відшуканні найкоротшого шляху між заданими вершинами s і t. Вони дійсно досягаються, якщо виявиться, що вершина t буде останньою вершиною, що отримала постійну позначку.

Як тільки довжини найкоротших шляхів від s будуть знайдені (вони будуть заключними значеннями позначок вершин), самі шляху можна отримати за допомогою рекурсивної процедури з використанням співвідношення (*). Так як вершина x i 'безпосередньо передує вершині x i в найкоротшому шляху від s до x i , то для будь-якої вершини x i відповідну вершину x i 'можна знайти як одну з залишилися вершин, для якої

''. (*)

Якщо найкоротший шлях від s до будь-якої вершини x i є єдиним, то дуги (x i ', x i ) цього найкоротшого шляху утворюють орієнтоване дерево з коренем s. Якщо існує кілька В«найкоротшихВ» шляхів від s до якої-небудь іншої вершині, то при деякій фіксованій вершині x i 'співвідношення (*) буде виконуватися для більш ніж однієї вершини x i . У цьому випадку вибір може бути або довільним (якщо потрібен якийсь один найкоротший шлях між s і x i ), або таким, що розглядаються всі дуги (x i ', x i ), що входять до будь-якої з найкоротших шляхів і при цьому сукупність всіх таких дуг утворює не орієнтоване дерево, а загальний граф, званий базою щодо s або коротко - s- базою .


2.2 Завдання з методичним описом

Знайти найкоротші шляхи від вершини 1 до всіх інших вершин графа

неорієнтованих ребро будемо розглядати як пару протилежно орієнтованих дуг рівного ваги. Скористаємося алгоритмом Дейкстри. Постійні позначки будемо постачати знаком +, решта позначки розглядаються як тимчасові.

x 1

x 2

x 3

x 4

x 5

x 6

x 7

x 8

x 9

x 1

10 3 6 12

x 2

10 18 2 13

x 3

18 25 20 7

x 4

25 5 16 4

x 5

5 10

x 6

20 10 14 15 9

x 7

2 4 14 24

x 8

6 23 15 5

x 9

12 13 9 24 5

Алгоритм працює так:

Крок 1 . .

Перша ітерація

Крок 2 . - Всі позначки тимчасові.

;;;

Крок 3 . відповідає x 7 .

Крок 4 . x 7 отримує постійну позначку l (x 7 ) = 3 + , p = x 7 .

Крок 5 . Не всі вершини мають постійні позначки, тому переходимо до кроку 2.

Друга ітерація

Крок 2 . - Всі позначки тимчасові.

;;;

Крок 3 . відповідає x 2 .

Крок 4 . x 2 отримує постійну позначку l (x 2 ) = 5 + , p = x 2 .

Крок 5 . Не всі вершини мають постійні позначки, тому переходимо до кроку 2.

Третя ітерація

Крок 2 . - Тільки вершини x 3 і x 9 мають тимчасові позначки.

;

Крок 3 . відповідає x 8 .

Крок 4 . x 8 отримує постійну позначку l (x 8 ) = 6 + , p = x 8 .

Крок 5 . Не всі вершини мають постійні позначки, тому переходимо до кроку 2.

Четверта ітерація

Крок 2 . - Ті...


Друкувати реферат
Замовити реферат
Товары
загрузка...
Наверх Зворотнiй зв'язок