• Non ci sono risultati.

Minimum Spanning Tree Minimum Spanning Tree

N/A
N/A
Protected

Academic year: 2021

Condividi "Minimum Spanning Tree Minimum Spanning Tree"

Copied!
97
0
0

Testo completo

(1)

Minimum Spanning Tree Minimum Spanning Tree

Moreno Marzolla

Dipartimento di Informatica—Scienza e Ingegneria (DISI) Università di Bologna https://www.moreno.marzolla.name/

(2)

Minimum Spanning Trees 2

(3)

Minimum Spanning Trees 3

Introduzione

Un problema di notevole importanza:

determinare come interconnettere diversi elementi fra loro minimizzando certi vincoli sulle connessioni

Esempio classico:

progettazione dei circuiti elettronici dove si vuole

minimizzare la quantità di filo elettrico per collegare fra loro i diversi componenti

Questo problema prende il nome di:

albero di copertura (di peso) minimo

albero di connessione (di peso) minimo

Minimum Spanning Tree (MST)

(4)

Minimum Spanning Trees 4

Esempio

n pin su un circuito stampato da collegare con una traccia di lunghezza minima

(5)

5

Esempio

n pin su un circuito stampato da collegare con una traccia di lunghezza minima

(6)

Minimum Spanning Trees 6

Definizione del problema

Input:

G = (V, E) un grafo non orientato e connesso

w: V  V → R una funzione peso

se {u, v}  E, allora w(u, v) è il peso dell'arco {u, v}

se {u, v}  E, allora w(u, v) = 

Poiché G non è orientato, w(u, v) = w(v, u)

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(7)

Minimum Spanning Trees 7

Definizione del problema

Albero di copertura (spanning tree)

Dato un grafo G = (V, E) non orientato e connesso, un

albero di copertura di G è un sottografo T = (V, ET) tale che

T è un albero

ET  E

T contiene tutti i nodi di G

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(8)

Minimum Spanning Trees 8

Definizione del problema

Output: albero di copertura di peso minimo (minimum spanning tree)

Un albero di copertura il cui peso totale

sia minimo, tra tutti i possibili alberi di copertura T w (T ) =

(u , v)∈T

w (u , v)

(9)

Minimum Spanning Trees 9

Osservazione

Il MST non è necessariamente unico

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(10)

Minimum Spanning Trees 10

Algoritmo generico

Vediamo

Un algoritmo greedy generico

Due istanze di questo algoritmo: Kruskal e Prim

L'idea è di accrescere un sottoinsieme T di archi in modo tale che venga rispettata la seguente

condizione:

T è un sottoinsieme di qualche albero di copertura minimo

Un arco {u, v} è detto sicuro per T se T  {u, v} è ancora un sottoinsieme di qualche MST

(11)

Minimum Spanning Trees 11

Algoritmo generico

Tree Generic-MST(Grafo G=(V,E,w)) Tree T ← Albero vuoto

while T non forma un albero di copertura do trova un arco sicuro {u, v}

T ← T  {u, v}

endwhile return T

Archi blu

sono gli archi che fanno parte del MST

Archi rossi

sono gli archi che non fanno parte del MST

(12)

Minimum Spanning Trees 12

Definizioni

Per caratterizzare gli archi sicuri dobbiamo introdurre alcune definizioni:

Un taglio (S, V - S) di un grafo non orientato G = (V, E) è una partizione di V in due sottoinsiemi disgiunti

Un arco {u, v} attraversa il taglio se u S e v V - S

Un taglio rispetta un insieme di archi T se nessun arco di T attraversa il taglio

Un arco che attraversa un taglio è leggero se il suo peso è minimo fra i pesi degli archi che attraversano un taglio

(13)

Minimum Spanning Trees 13

Esempio

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10

2 Taglio

Insieme T: archi blu (il taglio rispetta T)

Insieme S

Insieme V - S

Arco leggero che attraversa il taglio

(14)

Minimum Spanning Trees 14

Regole del ciclo e del taglio

Regola del ciclo

Scegli un ciclo semplice in G che non contenga archi rossi.

Tra tutti gli archi non colorati del ciclo, seleziona un arco di costo massimo e coloralo di rosso

Regola del taglio

Scegli un taglio in G che non contenga archi blu. Tra tutti gli archi non colorati che attraversano il taglio seleziona un arco di costo minimo e coloralo di blu

Metodo greedy

Costruisce un MST applicando, ad ogni passo, una delle due regole precedenti (una qualunque, purché si possa usare)

(15)

Minimum Spanning Trees 15

Esempio

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(16)

Minimum Spanning Trees 16

Esempio

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(17)

Minimum Spanning Trees 17

Esempio

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(18)

Minimum Spanning Trees 18

Esempio

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(19)

Minimum Spanning Trees 19

Esempio

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(20)

Minimum Spanning Trees 20

Esempio

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(21)

Minimum Spanning Trees 21

Esempio

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(22)

Minimum Spanning Trees 22

Esempio

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(23)

Minimum Spanning Trees 23

Esempio

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(24)

Minimum Spanning Trees 24

Esempio

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(25)

Minimum Spanning Trees 25

Esempio

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(26)

Minimum Spanning Trees 26

Esempio

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(27)

Minimum Spanning Trees 27

Esempio

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(28)

Minimum Spanning Trees 28

Esempio

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(29)

Minimum Spanning Trees 29

Esempio

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(30)

Minimum Spanning Trees 30

Esempio

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(31)

Minimum Spanning Trees 31

Esempio

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(32)

Minimum Spanning Trees 32

Esempio

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(33)

Minimum Spanning Trees 33

Esempio

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(34)

Minimum Spanning Trees 34

Esempio

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(35)

Minimum Spanning Trees 35

Esempio

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(36)

Minimum Spanning Trees 36

Esempio

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(37)

Minimum Spanning Trees 37

Esempio

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(38)

Minimum Spanning Trees 38

Esempio

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(39)

Minimum Spanning Trees 39

Esempio

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(40)

Minimum Spanning Trees 40

Esempio

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(41)

Minimum Spanning Trees 41

Esempio

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(42)

Minimum Spanning Trees 42

Esempio

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(43)

Minimum Spanning Trees 43

Esempio

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(44)

Minimum Spanning Trees 44

Finito!

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(45)

Minimum Spanning Trees 45

Algoritmo di Kruskal

Idea

Ingrandire sottoinsiemi disgiunti di un albero di copertura minimo connettendoli fra di loro fino ad avere l’albero finale

Inizialmente la foresta di copertura è composta da n alberi, uno per ciascun nodo, e nessun arco

Si considerano gli archi in ordine non decrescente di peso

Se l'arco e = {u, v} connette due alberi blu distinti, lo si colora di blu.

Altrimenti lo si colora di rosso

L’algoritmo è greedy perché ad ogni passo si aggiunge alla foresta un arco con il peso minimo

Joseph B. Kruskal: On the Shortest Spanning Subtree of a Graph and the Traveling Salesman Problem. In: Proceedings of the American Mathematical Society, Vol 7, No. 1 (Feb, 1956), pp. 48–50

(46)

Minimum Spanning Trees 46

Esempio

Algoritmo di Kruskal

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(47)

Minimum Spanning Trees 47

Esempio

Algoritmo di Kruskal

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(48)

Minimum Spanning Trees 48

Esempio

Algoritmo di Kruskal

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(49)

Minimum Spanning Trees 49

Esempio

Algoritmo di Kruskal

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(50)

Minimum Spanning Trees 50

Esempio

Algoritmo di Kruskal

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(51)

Minimum Spanning Trees 51

Esempio

Algoritmo di Kruskal

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(52)

Minimum Spanning Trees 52

Esempio

Algoritmo di Kruskal

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(53)

Minimum Spanning Trees 53

Esempio

Algoritmo di Kruskal

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(54)

Minimum Spanning Trees 54

Esempio

Algoritmo di Kruskal

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(55)

Minimum Spanning Trees 55

Esempio

Algoritmo di Kruskal

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(56)

Minimum Spanning Trees 56

Esempio

Algoritmo di Kruskal

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(57)

Minimum Spanning Trees 57

Esempio

Algoritmo di Kruskal

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(58)

Minimum Spanning Trees 58

Esempio

Algoritmo di Kruskal

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(59)

Minimum Spanning Trees 59

Esempio

Algoritmo di Kruskal

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(60)

Minimum Spanning Trees 60

Esempio

Algoritmo di Kruskal

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

Finito! Il MST è composto dai soli archi blu

(61)

Minimum Spanning Trees 61

Implementazione

Ordinare gli archi in ordine non decrescente di peso

Sappiamo come fare

Determinare se gli estremi di un arco appartengono allo stesso albero oppure no

Anche qui, sappiamo come fare...

...usando le strutture merge-find!

(62)

Minimum Spanning Trees 62

Algoritmo di Kruskal

Tree Kruskal-MST(Grafo G=(V,E,w)) Tree T ← albero vuoto

MergeFind MF ← new mfset( G.numNodi() );

// ordina gli archi di E per peso w crescente sort(E, w)

for each {u, v}  E do Tu ← MF.find(u)

Tv ← MF.find(v)

if (Tu ≠ Tv) then // evita i cicli T ← T ∪ {u, v} // aggiungi arco

MF.merge(Tu, Tv) // unisci componenti endif

endfor return T

(63)

Minimum Spanning Trees 63

Analisi

L'ordinamento richiede tempo

O(m log m) = O(m log n2) = O(m log n)

dove m è il numero di archi e n il numero di nodi

Il tempo di esecuzione dipende dalla realizzazione della struttura Merge-Find

Vengono effettuate 2m Find e (n - 1) Merge, oltre alla creazione della struttura Merge-Find

Se usiamo QuickUnion con euristica sul rango, la

sequenza di operazioni costa in tutto O((m + n) log n)

Totale: O(2m log n + n log n) = O(m log n)

(64)

Minimum Spanning Trees 64

Algoritmo di Prim

L’algoritmo di Prim procede mantenendo un singolo albero T che viene fatto “crescere”

L’albero parte da un nodo arbitrario r (la radice) e cresce fino a quando ricopre tutti i vertici

Ad ogni passo viene aggiunto l'arco di peso minimo che collega un nodo già raggiunto dell'albero con uno non ancora raggiunto

R. C. Prim: Shortest connection networks and some generalizations.

In: Bell System Technical Journal, 36 (1957), pp. 1389–1401

(65)

Minimum Spanning Trees 65

Esempio

Algoritmo di Prim

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(66)

Minimum Spanning Trees 66

Esempio

Algoritmo di Prim

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(67)

Minimum Spanning Trees 67

Esempio

Algoritmo di Prim

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(68)

Minimum Spanning Trees 68

Esempio

Algoritmo di Prim

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(69)

Minimum Spanning Trees 69

Esempio

Algoritmo di Prim

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(70)

Minimum Spanning Trees 70

Esempio

Algoritmo di Prim

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(71)

Minimum Spanning Trees 71

Esempio

Algoritmo di Prim

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(72)

Minimum Spanning Trees 72

Esempio

Algoritmo di Prim

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(73)

Minimum Spanning Trees 73

Esempio

Algoritmo di Prim

a

b

h

i

c

g

d

f

e 4

8

11

8

1

7 6

2

4 7

14 9 10 2

(74)

Minimum Spanning Trees 74

Implementazione

Una struttura dati per i nodi non ancora nell'albero

i nodi non ancora nel MST si trovano in una coda con priorità Q ordinata in base ad un valore d[v]

d[v] è il peso minimo di un arco che collega il nodo v, che non appartiene all'albero, ad un nodo già nell'albero

+ se tale arco non esiste

Come mantenere l'albero

Mediante il vettore padri p[v]

Terminazione: quando l'insieme Q è vuoto

Tutti i nodi tranne la radice conoscono il proprio padre

(75)

Minimum Spanning Trees 75

int[] Prim-MST(Grafo G=(V,E,w), nodo s) double d[1..n];

int p[1..n];

boolean added[1..n];

CodaPriorita<int, double> Q;

for v ← 1 to n do

p[v] ← -1; added[v] ← false;

if (v==s) then d[v] ← 0; else d[v] ← +∞ endif Q.insert(v, d[v]);

endfor

while (not Q.isEmpty()) do u ← Q.find();

Q.deleteMin();

added[u] ← true;

for each v adiacente a u do

if (not added[v] and w(u,v) < d[v]) then d[v] ← w(u,v);

Q.decreaseKey(v, d[v]);

p[v] ← u;

endif endfor endwhile return p;

(76)

Minimum Spanning Trees 76

Esempio di esecuzione

4

8

11

8

1

7 6

2

4 7

14 9 10 2

a

b c d

e

f g

h

i Q = { }

(77)

Minimum Spanning Trees 77

Esempio di esecuzione

0

4

8

11

8

1

7 6

2

4 7

14 9 10 2

a

b c d

e

f g

h

i Q = { (a,0) }

(78)

Minimum Spanning Trees 78

Esempio di esecuzione

0

4

8

4

8

11

8

1

7 6

2

4 7

14 9 10 2

a

b c d

e

f g

h

i

Q = { (b,4), (h,8) }

(79)

Minimum Spanning Trees 79

Esempio di esecuzione

0

4

8

4

8

11

8

1

7 6

2

4 7

14 9 10 2

a

b c d

e

f g

h

i

Q = { (b,4), (h,8) }

(80)

Minimum Spanning Trees 80

Esempio di esecuzione

0

4

8

8

4

8

11

8

1

7 6

2

4 7

14 9 10 2

a

b c d

e

f g

h

i

Q = { (h,8), (c,8) }

(81)

Minimum Spanning Trees 81

Esempio di esecuzione

0

4

8

8

4

8

11

8

1

7 6

2

4 7

14 9 10 2

a

b c d

e

f g

h

i

Q = { (h,8), (c,8) }

(82)

Minimum Spanning Trees 82

Esempio di esecuzione

0

4

8

7

8

1

4

8

11

8

1

7 6

2

4 7

14 9 10 2

a

b c d

e

f g

h

i

Q = { (g,1), (i,7), (c,8) }

(83)

Minimum Spanning Trees 83

Esempio di esecuzione

0

4

8

7

8

1

4

8

11

8

1

7 6

2

4 7

14 9 10 2

a

b c d

e

f g

h

i

Q = { (g,1), (i,7), (c,8) }

(84)

Minimum Spanning Trees 84

Esempio di esecuzione

0

4

8

6

8

1

2

4

8

11

8

1

7 6

2

4 7

14 9 10 2

a

b c d

e

f g

h

i

Q = { (f,2), (i,6), (c,8) }

(85)

Minimum Spanning Trees 85

Esempio di esecuzione

0

4

8

6

8

1

2

4

8

11

8

1

7 6

2

4 7

14 9 10 2

a

b c d

e

f g

h

i

Q = { (f,2), (i,6), (c,8) }

(86)

Minimum Spanning Trees 86

Esempio di esecuzione

0

4

8

6

4

1

14

2

10 4

8

11

8

1

7 6

2

4 7

14 9 10 2

a

b c d

e

f g

h

i

Q = { (c,4), (i,6), (e,10), (d,14) }

(87)

Minimum Spanning Trees 87

Esempio di esecuzione

0

4

8

6

4

1

14

2

10 4

8

11

8

1

7 6

2

4 7

14 9 10 2

a

b c d

e

f g

h

i

Q = { (c,4), (i,6), (e,10), (d,14) }

(88)

Minimum Spanning Trees 88

Esempio di esecuzione

0

4

8

2

4

1

7

2

10 4

8

11

8

1

7 6

2

4 7

14 9 10 2

a

b c d

e

f g

h

i

Q = { (i,2), (d,7), (e,10) }

(89)

Minimum Spanning Trees 89

Esempio di esecuzione

0

4

8

2

4

1

7

2

10 4

8

11

8

1

7 6

2

4 7

14 9 10 2

a

b c d

e

f g

h

i

Q = { (i,2), (d,7), (e,10) }

(90)

Minimum Spanning Trees 90

Esempio di esecuzione

0

4

8

2

4

1

7

2

10 4

8

11

8

1

7 6

2

4 7

14 9 10 2

a

b c d

e

f g

h

i

Q = { (d,7), (e,10) }

(91)

Minimum Spanning Trees 91

Esempio di esecuzione

0

4

8

2

4

1

7

2

10 4

8

11

8

1

7 6

2

4 7

14 9 10 2

a

b c d

e

f g

h

i

Q = { (d,7), (e,10) }

(92)

Minimum Spanning Trees 92

Esempio di esecuzione

0

4

8

2

4

1

7

2

9 4

8

11

8

1

7 6

2

4 7

14 9 10 2

a

b c d

e

f g

h

i Q = { (e,9) }

(93)

Minimum Spanning Trees 93

Esempio di esecuzione

0

4

8

2

4

1

7

2

9 4

8

11

8

1

7 6

2

4 7

14 9 10 2

a

b c d

e

f g

h

i Q = { (e,9) }

(94)

Minimum Spanning Trees 94

Esempio di esecuzione

0

4

8

2

4

1

7

2

9 4

8

11

8

1

7 6

2

4 7

14 9 10 2

a

b c d

e

f g

h

i Q = { }

(95)

Minimum Spanning Trees 95

int[] Prim-MST(Grafo G=(V,E,w), nodo s) double d[1..n];

int p[1..n];

boolean added[1..n];

CodaPriorita<int, double> Q;

for v ← 1 to n do

p[v] ← -1; added[v] ← false;

if (v==s) then d[v] ← 0; else d[v] ← +∞ endif Q.insert(v, d[v]);

endfor

while (not Q.isEmpty()) do u ← Q.find();

Q.deleteMin();

added[u] ← true;

for each v adiacente a u do

if (not added[v] and w(u,v) < d[v]) then d[v] ← w(u,v);

Q.decreaseKey(v, d[v]);

p[v] ← u;

endif endfor endwhile return p;

n find() n insert()

O(m) decreaseKey() n deleteMin()

(96)

Minimum Spanning Trees 96

Algoritmo di Prim

Costo computazionale

Utilizzando una coda di priorità basata su min-heap binario

n deleteMin() costano O(n log n)

n insert() costano O(n log n)

n find() costano O(n)

O(m) decreaseKey() costano O(m log n)

Totale

O(2 n log n + n + m log n) = O((n + m) log n) =

O(m log n) (se il grafo è connesso) In un grafo connesso si ha sempre m ≥ n - 1

(97)

Minimum Spanning Trees 97

MinHeap

3, 4

12, 0 31, 3

16, 1 13, 2

3, 4 12, 0 31, 3 16, 1 13, 2

1 3 4 2 0

0 1 2 3 4

0 1 2 3 4

heap[]

pos[]

data prio

Riferimenti

Documenti correlati

[r]

Per refutare l’affermazione occorre invece trovare un controesempio.. Date: 11

Quindi tutti i minimum spanning tree di G avranno lista dei pesi uguale

Upon startup a bridge sets all its link to PRE-FORWARDING and claims to be Root and designated bridge on every port When the information about root are expired the bridge tries

All vertices not in the spanning tree form a min Heap Q based on the minimum weight of any edge connecting vertex v and the tree. Value

Se la persona si autostimola con l’oggetto gradito proporre altri oggetti/attività della stessa categoria sensoriale. Rinforzare tutte le interazioni appropriate Estinguere

The Principal Component Analysis is introduced only to the purpose of identifying which subspace is fit for a Factorial MST to become a reference tree for the design of a

Meccanicamente: se avete le tabelle una sopra l’altra e avete segnato in qualche modo la trama minore copiate per ogni router le prime due cifre di tale trama nella riga