Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


Поиск максимального потока. 4 страница




Таблица 4.1a. Заполнение левого столбца и верхней строки

           
                  −4  
                            −4  
                           
                         
                −5            
                         
                                           

Следующей операцией является заполнение левых клеток каждой из 25 ячеек. Правило заполнения достаточно простое. В ячейку с индексом (i, j) вставляется сумма чисел из i -ой клетки левого столбца и левой половины j -ой клетки верхней строки. Операция соответствует пункту 1.1 общего шага АФУ. Заметим, что для любого x (в том числе x = ∞) x + ∞ = ∞ + x = ∞. Результаты данной операции представлены в следующей таблице 4.1b.

 

Таблица 4.1b. Заполнение сумм

           
                  −4  
                        −4 −4  
                 
               
                −5       −2  
               
                                           

Следующая операция – изменение (в некоторых случаях) записей в средних и правых клетках всех ячеек. Правило также очень простое:

1. Если число в левой клетке меньше числа в средней клетке, то

1.1. Число из левой клетке записывается в среднюю клетку.

1.2. В правую клетку записывается номер из правой клетки верхней строки, находя-щейся в одном столбце с рассматриваемой ячейкой.

2. В противном случае ничего не делается.

В качестве примера рассмотрим ячейку (4,2) в которой число в левой клетке (5) меньше числа в средней клетке (∞). Тогда число 5 надо записать в среднюю клетку вместо ∞, а в правую клетку надо записать номер 1. Легко понять, что описанная операция (выделение минимумов и копи-рование значений) в точности представляет собой операции пунктов 1.2 и 2 общего шага АФУ. Результаты её выполнения записаны в таблице 4.1c. Заметим, что числа в средних клетках ячейки (i, j) – это длины построенных на рассматриваемой итерации и ранее путей из вершины i в вершину j, а номера в правых клетках – это предпоследние вершины на этих путях.

Таблица 4.1c. Заполнение минимумов и предпоследних вершин

           
                  −4  
                        −4 −4  
                 
               
                  −5       −2 −2  
               
                                           

Для завершения итерации 1 осталось сделать следующее. Числа из левых клеток всех яче-ек удаляются. Удаляются также все данные из левого столбца и верхней строки. В результате получаем таблицу 4.1d, которая по форме совпадает с таблицей 4, полученной в результате инициализации.

Таблица 4.1d. Результат итерации 1

           
                       
                            −4  
                             
                           
                  −5           −2  
                           
                                           

Итерация 2. k = 2. На итерации 2 происходит последовательное преобразование данных, полученных на итерации 1 и представленных в таблице 4.1d. Естественно, что алгоритм не ме-няется, поэтому подробных объяснений к каждой таблице, как на итерации 1, не даётся. Выпол-нение итерации 2 демонстрируется в таблицах 4.2a – 4.2d, аналогичных таблицам 4.1a – 4.1d. Заметим, что в левый столбец копируются данные из 2-го столбца, а в верхнюю строку – из 2-ой строки таблицы 4.2а, так как k = 2.

 

 

Таблица 4.2а. Заполнение левого столбца и верхней строки

           
                   
                            −4  
                             
                           
                  −5           −2  
                         
                                           

Таблица 4.2b. Заполнение сумм

           
                   
                        −4  
                         
                       
              −5           −2  
               
                                           

Таблица 4.2c. Заполнение минимумов и предпоследних вершин

           
                   
                          −4  
                         
                           
              −5           −2  
               
                                           

Таблица 4.2d. Результат итерации 2

           
                       
                              −4  
                             
                               
                  −5           −2  
                           
                                           

Итерация 3. k = 3. На итерации 3 происходит последовательное преобразование данных, полученных на итерации 2 и представленных в таблице 4.2d. Выполнение итерации 3 демонст-рируется в таблицах 4.3a – 4.3d.

Таблица 4.3а. Заполнение левого столбца и верхней строки

           
                     
                              −4  
                           
                               
  −5               −5           −2  
                         
                                           

 

 

Таблица 4.3b. Заполнение сумм

           
                     
                            −4  
                 
                             
  −5     −1     −5 −5           −2  
               
                                           

Таблица 4.3c. Заполнение минимумов и предпоследних вершин

           
                     
                            −4  
                 
                             
  −5     −1 −1   −5 −5           −2  
               
                                           

Таблица 4.3d. Результат итерации 3

           
                       
                              −4  
                             
                               
            −1     −5           −2  
                           
                                           

Итерация 4. k = 4. На итерации 4 преобразование данных показано с мéньшей детализаци-ей. Требуемые операции выполняются так же, как и ранее, но промежуточные результаты не за-писываются в новые таблицы, а последовательно записываются в одни и те же ячейки и клетки. Результаты приводятся в таблице 4.4.

Таблица 4.4. Результат итерации 4

           
                       
                  −1           −4  
                  −4           −1  
                                 
            −1     −5           −2  
                                 
                                           

Итерация 5. k = 5. Эта итерация является последней перед финальным шагом F. В таблице 4.5 содержатся кратчайшие расстояния для всех пар вершин и вершины, предпоследние на каж-дом таком пути.





Поделиться с друзьями:


Дата добавления: 2016-10-07; Мы поможем в написании ваших работ!; просмотров: 411 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Сложнее всего начать действовать, все остальное зависит только от упорства. © Амелия Эрхарт
==> читать все изречения...

2189 - | 2073 -


© 2015-2024 lektsii.org - Контакты - Последнее добавление

Ген: 0.012 с.