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

Реферат Метод Мінті знаходження найкоротшого шляху





xt: = IntToStr (VertexCount);. Text: = IntToStr (VertexSrc);. Text: = IntToStr (VertexDest);. Cells [0, 0]: = 'Початок';. Cells [1, 0] : = 'Кінець';. Cells [2, 0]: = 'Вага'; I: = 1 to EdgesCount doJ: = 1 to 3 do Grid.Cells [J-1, I]: = IntToStr (Edges [I, J]);; TForm1.cmdCompClick (Sender: TObject); I, _from, _to: Integer;, VertArr: TVertexArray;: Boolean;: array of TElement; Process; I, Min, MinPos: Integer; InArr (VertArr, VertexDest ) then Exit;

Min: = MaxInt;

// шукаємо ребро з мінімальною вагою в обидва напрямки

for I: = 0 to High (Massiv) do (Massiv [I]. _weight

// ------------------------- not Bool then

_from: = Massiv [MinPos]. _start;

_to: = Massiv [MinPos]. _end;

_to: = Massiv [MinPos]. _start;

_from: = Massiv [MinPos]. _end;;. Lines.Add ('Знайшли мінімальна вага ребра -' + IntToStr (Min) + 'з' + IntToStr (_from) + 'в' + IntToStr (_to));

// віднімаємо з вартості всіх перевірених ребер вартість найменшого

for I: = 0 to High (Massiv) do (not Massiv [I]. _checked) and (InArr (VertArr, Massiv [I]. _start) or InArr (VertArr, Massiv [I] . _end)) then [I]. _weight: = Massiv [I]. _weight - Min; Massiv [I]. _weight = 0 then [_to - 1]. _vertex: = _from; [_to - 1]. _data: = Massiv [MinPos]. _initial;

end;;

// ------------------------------------

// заносимо в список вершин чергову, до якої веде ребро з мінімальною ваго

SetLength (VertArr, Length (VertArr) + 1); not Bool then

// і відзначаємо ребро з хв. вартістю

Massiv [MinPos]. _checked: = True;. ProcessMessages;

// звем рекурсію для доданої до списку вершини

Process;; Res: string;: Integer; VertexSrc = VertexDest then (Handle, 'Вихідний і кінцевий пункти збігаються','', MB_ICONEXCLAMATION);;; (VertexCount

begin (Handle, 'Невірне значення джерела або призначення','', MB_ICONEXCLAMATION);

Exit;;. Clear; (Massiv, Grid.RowCount - 1); I: = 0 to High (Massiv) do [I]. _start: = StrToInt (Grid.Cells [0, I +1]); [I]. _end: = StrToInt (Grid.Cells [1, I +1]); [I]. _weight: = StrToInt (Grid.Cells [2, I +1]); [I] . _initial: = Massiv [I]. _weight; [I]. _checked: = False;; (Vertex, VertexCount)...


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





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

  • Реферат на тему: Алгоритми на графах. Знаходження найкоротшого шляху
  • Реферат на тему: Phonetic peculiarities of the popular science text
  • Реферат на тему: Grammar of the Text: its Basic Units and Main Features (based on the novel ...
  • Реферат на тему: Технології аналізу даних (Text Mining, Data Mining)
  • Реферат на тему: Завдання пошуку найкоротшого шляху