• Nie Znaleziono Wyników

Z ka»d¡ kraw¦dzi¡ e skojarzona jest para wierzchoªków incydentnych (u, v)

N/A
N/A
Protected

Academic year: 2021

Share "Z ka»d¡ kraw¦dzi¡ e skojarzona jest para wierzchoªków incydentnych (u, v)"

Copied!
137
0
0

Pełen tekst

(1)

• Graf (nieskierowany) G = (V, E)  struktura skªadaj¡ca si¦ ze:

 zbioru wierzchoªków V = {v1, v2, . . . , vn} oraz

 zbioru kraw¦dzi E = {e1, e2, . . . , em}.

Z ka»d¡ kraw¦dzi¡ e skojarzona jest para wierzchoªków incydentnych (u, v). Analiz¦ algorytmów grafowych mo»emy ograniczy¢ do przypad- ków, w których para wierzchoªków jednoznacznie identykuje kraw¦d¹.

• Graf skierowany  dla ka»dej kraw¦dzi (oznaczanej tutaj jako ªuk) para wierzchoªków incydentnych jest par¡ uporz¡dkowan¡ {u, v}.

Zatem w grae skierowanym {u, v} 6= {v, u} ({u, v} i {v, u} oznacza dwa ró»ne ªuki, podczas gdy w grae nieskierowanym (u, v) i (v, u) to ta sama kraw¦d¹, tzn. (u, v) = (v, u)).

(2)

• Rozmiar grafu b¦dziemy identykowa¢ przez liczb¦ wierzchoªków n oraz liczb¦ kraw¦dzi (ªuków) m.

(3)

v1

v4 v3

v2

v6

3

8 9

4

8

4 5

v1

5

v4 v3

v2

v6

3 9

4 – 8

5 4 3

3 5

(4)

(ªuku {i, j}).

Je±li dany graf nie zawiera kraw¦dzi (i, j) to w odpowiadaj¡cej jej komórce macierzy wpisujemy warto±¢ ∞. Warto±ci wyró»nione (zera, warto±ci uje- mne, niesko«czono±ci, znaki nienumeryczne) znajduj¡ si¦ te» na przek¡tnej macierzy (brak kraw¦dzi typu (i, i)).

Zauwa»my równie», »e macierz dla grafu nieskierowanego jest zawsze syme- tryczna (w takim wypadku mo»na równie» przechowywa¢ tylko poªow¦ ma- cierzy).

Zaj¦to±¢ pami¦ci  O(n2).

(5)

Zaj¦to±¢ pami¦ci  O(m).

(6)

[1] [2] [3] [4] [5] [6]

[1] 5 3 4 8 9

[2] 5 4 8

[3] 3 5

[4] 4 4

[5] 8 5

[6] 9 8

(1) [1] [2] 5

(2) [1] [3] 3

(3) [1] [4] 4

(4) [1] [5] 8

(5) [1] [6] 9

(6) [2] [4] 4

(7) [2] [6] 8

(8) [3] [5] 5

(7)

st¦puje w tej strukturze 2 razy  w li±cie i-tej oraz j-tej.

Zalet¡ struktury jest to, »e wszystkie kraw¦dzie (ªuki) z danego wierzchoªka mamy zgrupowane w jednym miejscu (s¡ dost¦pne bez konieczno±ci prze- szukiwania caªego grafu).

Zaj¦to±¢ pami¦ci  O(n + m).

(8)

wych i wagi wszystkich kraw¦dzi, pogrupowane w zbiory ze sob¡ incydentne, a pierwsza tablica (odpowiadaj¡ca wierzchoªkom pocz¡tkowym) zawiera wska¹niki rozdzielaj¡ce poszczególne grupy (np. je±li wierzchoªek 1 ma 5 kraw¦dzi incydentnych, to komórki [1] i [2] pierwszej tablicy zawieraj¡

odpowiednio wska¹niki na komórki [1] i [6] tablicy drugiej).

Struktura posiada zalet¦ struktury wcze±niejszej  zgrupowanie kraw¦dzi incydentnych poszczególnych wierzchoªków, przy braku typów wska¹niko- wych.

Zaj¦to±¢ pami¦ci  O(n + m).

(9)

[1]

[2]

[3]

[4]

[5]

[6]

[2] 5

Połączone listy sąsiadów

[3] 3 [4] 4 [6] 9

[1] 3 [6] -8

[1] 3 [2] 4

[1] 1

[2] 5

[3] 7

[4] 8

[5] -1

[6] -1

B W

[2] 5 (1)

[3] 3 (2)

[4] 4 (3)

[6] 9 (4)

[1] 3 (5)

[6] -8 (6)

[1] 3 (7)

[2] 4 (8)

(10)

biega, tj. {v1, v2, . . . , vk−1, vk}.

Wag¡ drogi b¦dziemy okre±la¢ sum¦ wag ªuków j¡ tworz¡cych.

Cykl  droga zamkni¦ta, tzn. taka, »e v1 = vk. Graf acykliczny  graf nie zawieraj¡cy cykli.

Zauwa»my, »e z wierzchoªka s do t mo»e istnie¢ wiele ró»nych dróg, zatem najkrótsz¡ drog¡ b¦dzie ta spo±ród dróg, która ma najmniejsz¡ wag¦.

Podgraf G0 = (V 0, E0) grafu G = (V, E) to graf o rozmiarze n0 ≤ n i m0 ≤ m, dla którego V 0 ⊆ V oraz E0 ⊆ E (tzn. wszystkie wierzchoªki i ªuki G0 nale»¡

do G).

(11)

grae spójnym (nieskierowanym), istnieje droga mi¦dzy ka»d¡ par¡ wierz- choªków. Zatem doª¡czenie nowej kraw¦dzi spowoduje powstanie cyklu, a usuni¦cie jakiejkolwiek kraw¦dzi z drzewa spowoduje jego rozspójnienie.

Wreszcie, w drzewie m = n − 1.

Drzewo rozpinaj¡ce (spinaj¡ce) T = (V T, ET)  podgraf (nieskierowa- nego, spójnego) grafu G = (V, E), który jest spójny i V T = V . Graf spójny mo»e zawiera¢ wiele (do nn−2) ró»nych drzew rozpinaj¡cych, z których to o najmniejszej wadze nazywamy Minimalnym Drzewem Rozpinaj¡cym (Spinaj¡cym)  MST (ang. Minimum Spanning Tree).

(12)

v1

v4 v3

v2

v6

3

8

9

4

8

4 5

5

(13)

v1

v4 v3

v2

v6

3

8

6

4

8

4 5

5 Waga D1: 5+3+5+8 = 21

(14)

v1

v4 v3

v2

v6

3

8

6

4

8

4 5

5 Waga D1: 5+3+5+8 = 21

Droga D2 {v5,v1,v4,v6}

Waga D2: 8+4+6 = 18

(15)

v1

v4 v3

v2

v6

3

8

6

4

8

4 5

5

Waga MST1: 3+8+4+4+6 = 25

(16)

v1

v4 v3

v2

v6

3

8

6

4

8

4 5

5

Waga MST1: 3+8+4+4+6 = 25

Drzewo MST2

Waga MST2: 5+3+5+8+6 = 27

(17)

polega na doª¡czaniu kolejno kraw¦dzi w porz¡dku ich niemalej¡cych wag, o ile doª¡czana kraw¦d¹ nie utworzy cyklu z ju» wybranymi kraw¦dziami.

Aby wyznaczy¢ zªo»ono±¢ obliczeniow¡ algorytmu, musimy znale¹¢ efek- tywn¡ metod¦ sprawdzania, czy doª¡czana kraw¦d¹ utworzy cykl z ju»

doª¡czonymi.

(18)

Zatem powy»sz¡ procedur¦ mo»emy skonstruowa¢ w ten sposób, »e two- rzymy tablic¦ C o rozmiarze n i przy jej pomocy kolorujemy wierzchoªki.

Na pocz¡tku ka»dej komórce przypisujemy inn¡ warto±¢ (reprezentuj¡c¡ ko- lor danego wierzchoªka), np. C[i] = i dla i = 1, 2, . . . , n.

W trakcie dziaªania procedury, wierzchoªki nale»¡ce do tego samego pod- drzewa b¦d¡ posiada¢ ten sam kolor.

Zatem na pocz¡tku ka»dy wierzchoªek nale»y do innego poddrzewa, a na ko«cu wszystkie wierzchoªki musz¡ nale»e¢ do tego samego poddrzewa.

(19)

Zatem ka»dy z nich ma inny kolor (taki, którego nie posiada »aden inny wierzchoªek).

Wtedy wierzchoªkowi u nadajemy kolor wierzch. v (C[u] = C[v]) lub odwrotnie (C[v] = C[u])  oba wierzchoªki otrzymuj¡ ten sam kolor, a wi¦c nale»¡ od teraz do tego samego (nowego) poddrzewa. Taka operacja oczywi±cie nie utworzy cyklu, a wi¦c jest dopuszczalna.

2. Jeden wierzch., np. u, byª ju» wcze±niej wybrany, a drugi, v, jeszcze nie.

Zatem doª¡czenie kraw¦dzi (u, v) nie spowoduje powstania cyklu.

Wtedy wierzchoªek jeszcze nie wybrany musimy doª¡czy¢ do poddrzewa, do którego nale»y wierzchoªek u (tzn. wierzchoªkowi v przypisujemy ko- lor wierzchoªka u: C[v] = C[u]).

(20)

kie wierzchoªki jednego poddrzewa musz¡ przyj¡¢ kolor drugiego, np.

C[i] = C[v] je±li C[i] == C[u].

4. Oba wierzchoªki ju» wcze±niej zostaªy wybrane i nale»¡ do tego samego poddrzewa (posiadaj¡ ten sam kolor).

Wtedy próbujemy doª¡czy¢ now¡ kraw¦d¹ do istniej¡cego drzewa, co  jak ju» wiadomo  zawsze spowoduje powstanie cyklu. Zatem taka operacja jest zabroniona.

Podsumowuj¡c powy»sze, doª¡czenie kraw¦dzi (u, v) jest zabronione (powstanie cykl) je±li C[u] == C[v] (przypadek 4). W przeciwnym wy- padku nale»y doª¡czy¢ kraw¦d¹ i wykona¢ operacje na tablicy C opisane odpowiednio w punktach 1, 2 lub 3.

(21)

doª¡czenie pojedynczej kraw¦dzi do ju» doª¡czonych spowoduje powstanie cyklu zajmie O(n) czasu.

Teraz mo»emy wróci¢ do wyznaczenia zªo»ono±ci caªego algorytmu Kru- skala. Zale»y ona od kilku czynników.

Je±li do przechowywania grafu wykorzystamy list¦ kraw¦dzi i przed roz- pocz¦ciem doª¡czania kraw¦dzi posortujemy t¡ struktur¦ niemalej¡co ze wzgl¦du na wagi (co zajmie O(m log m) czasu) to b¦dziemy mogli nast¦p- nie analizowa¢ kraw¦dzie po kolei, za ka»dym razem stosuj¡c procedur¦

sprawdzania cyklu.

(22)

Zauwa»my jednak, »e w przypadku grafów g¦stych (m >> n) tylko niewielka cz¦±¢ wszystkich kraw¦dzi b¦dzie analizowana. Wtedy sortowanie wszyst- kich b¦dzie niepotrzebne  zbyt rozrzutne.

Lepiej wtedy umie±ci¢ kraw¦dzie w kopcu i pobiera¢ za ka»dym razem najkrótsz¡ z jeszcze nie doª¡czonych z korzenia.

Wtedy takie pobranie b¦dzie zajmowa¢ O(log m), a takich pobra« b¦dzie p, zatem zªo»ono±¢ caªego algorytmu wyniesie

O(p(log m + m)) = O(pm), gdzie n ≤ p ≤ m.

Mo»liwe jest te» takie zaimplementowanie algorytmu Kruskala, »e jego zªo-

»ono±¢ wyniesie O(m log m).

(23)

v1

v4 v3

v2

v6

3

8

9

4

8

4 5

5

(24)

v1

v4 v3

v2

v6

3

8

9

4

8

4 5

5

1. (v1,v3) – 3

(25)

v1

v4 v3

v2

v6

3

8

9

4

8

4 5

5

1. (v1,v3) – 3 2. (v2,v4) – 4

(26)

v1

v4 v3

v2

v6

3

8

9

4

8

4 5

5

1. (v1,v3) – 3 2. (v2,v4) – 4 3. (v1,v4) – 4

(27)

v1

v4 v3

v2

v6

3

8

9

4

8

4 5

5

1. (v1,v3) – 3 2. (v2,v4) – 4 3. (v1,v4) – 4 4. (v1,v2) – cykl

(28)

v1

v4 v3

v2

v6

3

8

9

4

8

4 5

5

1. (v1,v3) – 3 2. (v2,v4) – 4 3. (v1,v4) – 4 4. (v1,v2) – cykl

(29)

v1

v4 v3

v2

v6

3

8

9

4

8

4 5

5

1. (v1,v3) – 3 2. (v2,v4) – 4 3. (v1,v4) – 4 4. (v1,v2) – cykl 5. (v3,v5) – 5

(30)

v1

v4 v3

v2

v6

3

8

9

4

8

4 5

5

1. (v1,v3) – 3 2. (v2,v4) – 4 3. (v1,v4) – 4 4. (v1,v2) – cykl 5. (v3,v5) – 5 6. (v2,v6) – 8

(31)

v1

v4 v3

v2

v6

3

8

9

4

8

4 5

5

1. (v1,v3) – 3 2. (v2,v4) – 4 3. (v1,v4) – 4 4. (v1,v2) – cykl 5. (v3,v5) – 5 6. (v2,v6) – 8 waga MST: 24

(32)

Dzi¦ki temu, »e w ka»dym kroku algorytmu doª¡czamy nowy wierzchoªek do istniej¡cego poddrzewa, nigdy nie spowoduje to powstania cyklu, a wszystkich iteracji b¦dzie n − 1.

Intuicyjnie, najkorzystniej jest zastosowa¢ do tego algorytmu struktury po- zwalaj¡ce na efektywne wyszukiwanie wierzchoªków incydentnych w danym, a wi¦c np. poª¡czone listy s¡siadów.

Znalezienie kolejnego wierzchoªka do doª¡czenia b¦dzie w takim wy- padku wymagaªo przejrzenia list struktury odpowiadaj¡cych wierzchoªkom ju» doª¡czonym i wybraniu kraw¦dzi o najmniejszej wadze. W najgorszym wypadku b¦dzie wi¦c musieli przejrze¢ wszystkie kraw¦dzie, a wi¦c poje- dyncza iteracja zajmie O(m) czasu.

Zatem zªo»ono±¢ caªego algorytmu Prima to O(nm).

(33)

Kolejk¦ t¡ mo»na zaimplementowa¢ jako kopiec, w którym warto±ci¡ w¦- zªa jest odªegªo±¢ danego wierzchoªka od najbli»szego wierzchoªka spo±ród ju» doª¡czonych. Warto±ci te nale»y aktualizowa¢ po ka»dym doª¡czeniu nowego wierzchoªka, ale za to mamy od razu dost¦pn¡ informacj¦, który wierzchoªek ma by¢ doª¡czony jako nast¦pny. Takie podej±cie umo»liwia uzyskanie zªo»ono±ci obliczeniowej algorytmu Prima O(m log n).

Z kolei, je±li zamiast zwykªego kopca, u»yjemy kopca Fibonacciego, uzy- skamy zªo»ono±¢ O(m + n log n).

(34)

v1

v4 v3

v2

v6

3

8

9

4

8

4 5

5

(35)

v1

v4 v3

v2

v6

3

8

9

4

8

4 5

5

(36)

v1

v4 v3

v2

v6

3

8

9

4

8

4 5

5

(37)

v1

v4 v3

v2

v6

3

8

9

4

8

4 5

5

1. (v6,v2) – 8

(38)

v1

v4 v3

v2

v6

3

8

9

4

8

4 5

5

1. (v6,v2) – 8

(39)

v1

v4 v3

v2

v6

3

8

9

4

8

4 5

5

1. (v6,v2) – 8 2. (v2,v4) – 4

(40)

v1

v4 v3

v2

v6

3

8

9

4

8

4 5

5

1. (v6,v2) – 8 2. (v2,v4) – 4

(41)

v1

v4 v3

v2

v6

3

8

9

4

8

4 5

5

1. (v6,v2) – 8 2. (v2,v4) – 4 3. (v1,v4) – 4

(42)

v1

v4 v3

v2

v6

3

8

9

4

8

4 5

5

1. (v6,v2) – 8 2. (v2,v4) – 4 3. (v1,v4) – 4

(43)

v1

v4 v3

v2

v6

3

8

9

4

8

4 5

5

1. (v6,v2) – 8 2. (v2,v4) – 4 3. (v1,v4) – 4 4. (v1,v3) – 3

(44)

v1

v4 v3

v2

v6

3

8

9

4

8

4 5

5

1. (v6,v2) – 8 2. (v2,v4) – 4 3. (v1,v4) – 4 4. (v1,v3) – 3

(45)

v1

v4 v3

v2

v6

3

8

9

4

8

4 5

5

1. (v6,v2) – 8 2. (v2,v4) – 4 3. (v1,v4) – 4 4. (v1,v3) – 3 5. (v3,v5) – 5

(46)

v1

v4 v3

v2

v6

3

8

9

4

8

4 5

5

1. (v6,v2) – 8 2. (v2,v4) – 4 3. (v1,v4) – 4 4. (v1,v3) – 3 5. (v3,v5) – 5 waga MST: 24

(47)

sªu»y do wyznaczania najkrótszych dróg z wyznaczonego w¦zªa (¹ródªa, s) do wszystkich pozostaªych w¦zªów, w przypadku gdy wagi wszystkich ªu- ków grafu s¡ nieujemne.

W trakcie dziaªania algorytmu, dla ka»dego w¦zªa, x, pami¦tane jest osza- cowanie wagi najkrótszej drogi ze ¹ródªa: dsx. Przed rozpocz¦ciem dzia- ªania algorytmu warto±ci te wynosz¡ ∞ dla wszystkich w¦zªów z wyj¡tkiem

¹ródªa, dla którego dss = 0.

(48)

x, tzn. je±li aktualne oszacowanie, dsy, badanego w¦zªa y, jest wi¦ksze ni»

suma oszacowania dsx oraz wagi, wxy, ªuku {x, y} to dsy = dsx + wxy.

(49)

v1

v4 v3

v2

v6

3 12

4 7

5 4 3

3

8

4 2

(50)

v1

v4 v3

v2

v6

3 12

4 7

5 4 3

3

8

4 2

1 0

(51)

v1

v4 v3

v2

v6

3 12

4 7

5 4 3

3

8

4 2

1 0

(52)

v1

v4 v3

v2

v6

3 12

4 7

5 4 3

3

8

4 2

1 0

(53)

v1

v4 v3

v2

v6

3 12

4 7

5 4 3

3

8

4 2

1 0 5

(54)

v1

v4 v3

v2

v6

3 12

4 7

5 4 3

3

8

4 2

1 0 5

(55)

v1

v4 v3

v2

v6

3 12

4 7

5 4 3

3

8

4 2

1 0 5 3

(56)

v1

v4 v3

v2

v6

3 12

4 7

5 4 3

3

8

4 2

1 0 5 3

(57)

v1

v4 v3

v2

v6

3 12

4 7

5 4 3

3

8

4 2

1 0 5 3 4

(58)

v1

v4 v3

v2

v6

3 12

4 7

5 4 3

3

8

4 2

1 0 5 3 4

(59)

v1

v4 v3

v2

v6

3 12

4 7

5 4 3

3

8

4 2

1 0 5 3 4 8

(60)

v1

v4 v3

v2

v6

3 12

4 7

5 4 3

3

8

4 2

1 0 5 3 4 8

(61)

v1

v4 v3

v2

v6

3 12

4 7

5 4 3

3

8

4 2

1 0 5 3 4 8 12

(62)

v1

v4 v3

v2

v6

3 12

4 7

5 4 3

3

8

4 2

1 0 5 3 4 8 12

2 0 5 3 4 8 12

(63)

v1

v4 v3

v2

v6

3 12

4 7

5 4 3

3

8

4 2

1 0 5 3 4 8 12

2 0 5 3 4 8 12

(64)

v1

v4 v3

v2

v6

3 12

4 7

5 4 3

3

8

4 2

1 0 5 3 4 8 12

2 0 5 3 4 8 12

(65)

v1

v4 v3

v2

v6

3 12

4 7

5 4 3

3

8

4 2

1 0 5 3 4 8 12

2 0 5 3 4 8 12

(66)

v1

v4 v3

v2

v6

3 12

4 7

5 4 3

3

8

4 2

1 0 5 3 4 8 12

2 0 5 3 4 8 12

(67)

v1

v4 v3

v2

v6

3 12

4 7

5 4 3

3

8

4 2

1 0 5 3 4 8 12

2 0 5 3 4 7 12

(68)

v1

v4 v3

v2

v6

3 12

4 7

5 4 3

3

8

4 2

1 0 5 3 4 8 12

2 0 5 3 4 7 12

(69)

v1

v4 v3

v2

v6

3 12

4 7

5 4 3

3

8

4 2

1 0 5 3 4 8 12

2 0 5 3 4 7 12

3 0 5 3 4 7 12

(70)

v1

v4 v3

v2

v6

3 12

4 7

5 4 3

3

8

4 2

1 0 5 3 4 8 12

2 0 5 3 4 7 12

3 0 5 3 4 7 12

(71)

v1

v4 v3

v2

v6

3 12

4 7

5 4 3

3

8

4 2

1 0 5 3 4 8 12

2 0 5 3 4 7 12

3 0 5 3 4 7 12

(72)

v1

v4 v3

v2

v6

3 12

4 7

5 4 3

3

8

4 2

1 0 5 3 4 8 12

2 0 5 3 4 7 12

3 0 5 3 4 7 12

(73)

v1

v4 v3

v2

v6

3 12

4 7

5 4 3

3

8

4 2

1 0 5 3 4 8 12

2 0 5 3 4 7 12

3 0 5 3 4 7 12

(74)

v1

v4 v3

v2

v6

3 12

4 7

5 4 3

3

8

4 2

1 0 5 3 4 8 12

2 0 5 3 4 7 12

3 0 5 3 4 7 12

4 0 5 3 4 7 12

(75)

v1

v4 v3

v2

v6

3 12

4 7

5 4 3

3

8

4 2

1 0 5 3 4 8 12

2 0 5 3 4 7 12

3 0 5 3 4 7 12

4 0 5 3 4 7 12

(76)

v1

v4 v3

v2

v6

3 12

4 7

5 4 3

3

8

4 2

1 0 5 3 4 8 12

2 0 5 3 4 7 12

3 0 5 3 4 7 12

4 0 5 3 4 7 12

(77)

v1

v4 v3

v2

v6

3 12

4 7

5 4 3

3

8

4 2

1 0 5 3 4 8 12

2 0 5 3 4 7 12

3 0 5 3 4 7 12

4 0 5 3 4 7 12

(78)

v1

v4 v3

v2

v6

3 12

4 7

5 4 3

3

8

4 2

1 0 5 3 4 8 12

2 0 5 3 4 7 12

3 0 5 3 4 7 12

4 0 5 3 4 7 12

5 0 5 3 4 7 12

(79)

v1

v4 v3

v2

v6

3 12

4 7

5 4 3

3

8

4 2

1 0 5 3 4 8 12

2 0 5 3 4 7 12

3 0 5 3 4 7 12

4 0 5 3 4 7 12

5 0 5 3 4 7 12

(80)

v1

v4 v3

v2

v6

3 12

4 7

5 4 3

3

8

4 2

1 0 5 3 4 8 12

2 0 5 3 4 7 12

3 0 5 3 4 7 12

4 0 5 3 4 7 12

5 0 5 3 4 7 12

(81)

v1

v4 v3

v2

v6

3 12

4 7

5 4 3

3

8

4 2

1 0 5 3 4 8 12

2 0 5 3 4 7 12

3 0 5 3 4 7 12

4 0 5 3 4 7 12

5 0 5 3 4 7 9

(82)

v1

v4 v3

v2

v6

3 12

4 7

5 4 3

3

8

4 2

1 0 5 3 4 8 12

2 0 5 3 4 7 12

3 0 5 3 4 7 12

4 0 5 3 4 7 12

5 0 5 3 4 7 9

6 0 5 3 4 7 9

(83)

v1

v4 v3

v2

v6

3 12

4 7

5 4 3

3

8

4 2

1 0 5 3 4 8 12

2 0 5 3 4 7 12

3 0 5 3 4 7 12

4 0 5 3 4 7 12

5 0 5 3 4 7 9

6 0 5 3 4 7 9

(84)

v1

v4 v3

v2

v6

3 12

4 7

5 4 3

3

8

4 2

1 0 5 3 4 8 12

2 0 5 3 4 7 12

3 0 5 3 4 7 12

4 0 5 3 4 7 12

5 0 5 3 4 7 9

6 0 5 3 4 7 9

Najkrótsza droga z v1 do v6: { v6}

(85)

v1

v4 v3

v2

v6

3 12

4 7

5 4 3

3

8

4 2

1 0 5 3 4 8 12

2 0 5 3 4 7 12

3 0 5 3 4 7 12

4 0 5 3 4 7 12

5 0 5 3 4 7 9

6 0 5 3 4 7 9

Najkrótsza droga z v1 do v6: { v5,v6}

(86)

v1

v4 v3

v2

v6

3 12

4 7

5 4 3

3

8

4 2

1 0 5 3 4 8 12

2 0 5 3 4 7 12

3 0 5 3 4 7 12

4 0 5 3 4 7 12

5 0 5 3 4 7 9

6 0 5 3 4 7 9

Najkrótsza droga z v1 do v6: { v5,v6}

Cytaty

Powiązane dokumenty

- na wspólną obsługę jednostek samorządu terytorialnego przeznaczono kwotę 408.096,-zł w ramach tego rozdziału przewidziano wynagrodzenia, pochodne, na

ustaloną przez Przedsiębiorstwo taryfę dla usług dystrybucji energii elektrycznej, stanowiącą załącznik do niniejszej decyzji, na okres 12 miesięcy od dnia 1 lipca 2017

Odwołanie od decyzji powinno czynić zadość wymaganiom przepisanym dla pisma procesowego oraz zawierać oznaczenie zaskarżonej decyzji i wartości przedmiotu sporu,

Pismem z dnia 16 stycznia 2020 r., znak: BT-126/12/20, uzupełnionym kolejnymi pismami, Przedsiębiorstwo wystąpiło o zmianę taryfy dla energii elektrycznej, polegającą na

Destylacja molekularna jest ważnym elementem wytwarzania wysokiej jakości i w odpowiednim standardzie półproduktów w formie ekstraktów i izolatów kannabinoidów (CBD, CBG, CBC,

Podejście porównawcze, zgodnie z art. 1 ugn z dnia 21 sierpnia 1997 r., polega na określeniu wartości nieruchomości przy założeniu, że wartość ta odpowiada cenom, jakie

znak: DRE.WRE.4211.81.4.2019.JCz/MSt1 ogłoszoną w „Biuletynie Branżowym Urzędu Regulacji Energetyki – Energia elektryczna” Nr 279(2914) z dnia 15 listopada 2019 r., Prezes

Zdaniem Sądu Okręgowego wyeliminowanie wskazanych klauzul nie stoi jednak na przeszkodzie dalszemu stosowaniu umowy zawartej przez strony, w takim zakresie, w jakim nie narusza