D i j k s t r a ' s a l g o r i t h m P r i m - - PowerPoint PPT Presentation

d i j k s t r a s a l g o r i t h m p r i m s a l g o r i
SMART_READER_LITE
LIVE PREVIEW

D i j k s t r a ' s a l g o r i t h m P r i m - - PowerPoint PPT Presentation

D i j k s t r a ' s a l g o r i t h m P r i m ' s a l g o r i t h m T h e ( w e i g h t e d ) s h o r t e s t p a t h p r o b l e m F i n d t h e s h o r t e s t p a


slide-1
SLIDE 1

D i j k s t r a ' s a l g

  • r

i t h m P r i m ' s a l g

  • r

i t h m

slide-2
SLIDE 2

T h e ( w e i g h t e d ) s h

  • r

t e s t p a t h p r

  • b

l e m

F i n d t h e s h

  • r

t e s t p a t h f r

  • m

p

  • i

n t A t

  • p
  • i

n t B i n a w e i g h t e d g r a p h ( t h e p a t h w i t h l e a s t w e i g h t ) U s e f u l i n e . g . , r

  • u

t e p l a n n i n g , n e t w

  • r

k r

  • u

t i n g Mo s t c

  • m

m

  • n

a p p r

  • a

c h : D i j k s t r a ' s a l g

  • r

i t h m , w h i c h w

  • r

k s w h e n a l l e d g e s h a v e p

  • s

i t i v e w e i g h t

slide-3
SLIDE 3

D i j k s t r a ' s a l g

  • r

i t h m

D i j k s t r a ' s a l g

  • r

i t h m c

  • m

p u t e s t h e d i s t a n c e f r

  • m

a s t a r t n

  • d

e t

  • a

l l

  • t

h e r n

  • d

e s I d e a : m a i n t a i n a s e t S

  • f

n

  • d

e s w h

  • s

e d i s t a n c e s w e k n

  • w

, a n d t h e i r d i s t a n c e s I n i t i a l l y , S

  • n

l y c

  • n

t a i n s t h e s t a r t n

  • d

e , w i t h d i s t a n c e

D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

1 5 5 3 4 4 6 3 3 1 1 7 2 9 4 8 1 1

B l a x h a l l

slide-4
SLIDE 4

D i j k s t r a ' s a l g

  • r

i t h m

A t e a c h s t e p : fj n d t h e c l

  • s

e s t n

  • d

e t h a t ' s n

  • t

i n S Tii s n

  • d

e m u s t b e a d j a c e n t t

  • a

n

  • d

e i n S ( w h y ? ) H e n c e t h e p a t h t

  • t

h a t n

  • d

e m u s t c

  • n

s i s t

  • f

:

  • T

a k i n g t h e s h

  • r

t e s t p a t h t

  • s
  • m

e n

  • d

e i n S , t h e n

  • t

a k i n g a s i n g l e e d g e t

  • g

e t t

  • t

h e n e w n

  • d

e

D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

1 5 5 3 4 4 6 3 3 1 1 7 2 9 4 8 1 1

B l a x h a l l

slide-5
SLIDE 5

D i j k s t r a ' s a l g

  • r

i t h m

F

  • r

e a c h n

  • d

e x i n S , a n d e a c h n e i g h b

  • u

r y

  • f

x :

  • A

d d t h e d i s t a n c e t

  • x

a n d t h e d i s t a n c e f r

  • m

x t

  • y

Wh i c h e v e r n

  • d

e y h a s t h e s h

  • r

t e s t d i s t a n c e , a d d i t t

  • S

!

  • Tii

s i s t h e c l

  • s

e s t n

  • d

e n

  • t

i n S ( w h a t i s t h e p a t h t

  • t

h i s n

  • d

e ? )

R e p e a t u n t i l a l l n

  • d

e s a r e i n S

D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

1 5 5 3 4 4 6 3 3 1 1 7 2 9 4 8 1 1

B l a x h a l l

slide-6
SLIDE 6

D i j k s t r a ' s a l g

  • r

i t h m

S = { D u n w i c h } → N e i g h b

  • u

r s

  • f

D u n w i c h a r e B l a x h a l l ( d i s t a n c e 1 5 ) , H a r w i c h ( d i s t a n c e 5 3 ) S

  • a

d d B l a x h a l l 1 5 → t

  • S

D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

1 5 5 3 4 4 6 3 3 1 1 7 2 9 4 8 1 1

B l a x h a l l

slide-7
SLIDE 7

D i j k s t r a ' s a l g

  • r

i t h m

S = { D u n w i c h , → B l a x h a l l 1 5 } → N e i g h b

  • u

r s

  • f

S a r e :

  • F

e e r i n g ( d i s t a n c e 1 5 + 4 6 = 6 1 )

  • H

a r w i c h ( d i s t a n c e 5 3 – a l s

  • v

i a B l a x h a l l 1 5 + 4 = 5 5 )

S

  • a

d d H a r w i c h 5 3 → t

  • S

D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

1 5 5 3 4 4 6 3 3 1 1 7 2 9 4 8 1 1

B l a x h a l l

slide-8
SLIDE 8

D i j k s t r a ' s a l g

  • r

i t h m

S = { D u n w i c h , → B l a x h a l l 1 5 , → H a r w i c h 5 3 } → N e i g h b

  • u

r s

  • f

S a r e :

  • F

e e r i n g ( d i s t a n c e 1 5 + 4 6 = 6 1 )

  • T

i p t r e e ( d i s t a n c e 5 3 + 3 1 = 8 4 )

  • C

l a c t

  • n

( d i s t a n c e 5 3 + 1 7 = 7 )

S

  • a

d d F e e r i n g 6 1 → t

  • S

D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

1 5 5 3 4 4 6 3 3 1 1 7 2 9 4 8 1 1

B l a x h a l l

slide-9
SLIDE 9

D i j k s t r a ' s a l g

  • r

i t h m

S = { D u n w i c h , → B l a x h a l l 1 5 , → H a r w i c h 5 3 , → F e e r i n g 6 1 } → N e i g h b

  • u

r s

  • f

S a r e :

  • T

i p t r e e ( d i s t a n c e 6 1 + 3 = 6 4 , a l s

  • v

i a H a r w i c h 5 5 + 2 9 = 8 4 )

  • C

l a c t

  • n

( d i s t a n c e 5 3 + 1 7 = 7 )

  • Ma

l d e n ( d i s t a n c e 6 1 + 1 1 = 7 2 )

S

  • a

d d T i p t r e e 6 4 → t

  • S

D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

1 5 5 3 4 4 6 3 3 1 1 7 2 9 4 8 1 1

B l a x h a l l

slide-10
SLIDE 10

D i j k s t r a ' s a l g

  • r

i t h m

S = { D u n w i c h , → B l a x h a l l 1 5 , → H a r w i c h 5 3 , → F e e r i n g 6 1 , → T i p t r e e 6 4 } → N e i g h b

  • u

r s

  • f

S a r e :

  • C

l a c t

  • n

( d i s t a n c e 5 3 + 1 7 = 7 , a l s

  • v

i a T i p t r e e 6 4 + 2 9 = 9 3 )

  • Ma

l d

  • n

( d i s t a n c e 6 1 + 1 1 = 7 2 , a l s

  • v

i a T i p t r e e 6 4 + 8 = 7 2 )

S

  • a

d d C l a c t

  • n

7 → t

  • S

D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

1 5 5 3 4 4 6 3 3 1 1 7 2 9 4 8 1 1

B l a x h a l l

slide-11
SLIDE 11

D i j k s t r a ' s a l g

  • r

i t h m

S = { D u n w i c h , → B l a x h a l l 1 5 , → H a r w i c h 5 3 , → F e e r i n g 6 1 , → T i p t r e e 6 4 , → C l a c t

  • n

7 } → N e i g h b

  • u

r s

  • f

S a r e :

  • Ma

l d

  • n

( d i s t a n c e 6 1 + 1 1 = 7 2 , a l s

  • v

i a T i p t r e e 6 4 + 8 = 7 2 , a l s

  • v

i a C l a c t

  • n

7 + 4 = 1 1 )

S

  • a

d d Ma l d

  • n

7 2 → t

  • S

D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

1 5 5 3 4 4 6 3 3 1 1 7 2 9 4 8 1 1

B l a x h a l l

slide-12
SLIDE 12

D i j k s t r a ' s a l g

  • r

i t h m

S = { D u n w i c h , → B l a x h a l l 1 5 , → H a r w i c h 5 3 , → F e e r i n g 6 1 , → T i p t r e e 6 4 , → C l a c t

  • n

7 , → Ma l d

  • n

7 2 } → F i n i s h e d ! D i j k s t r a ' s a l g

  • r

i t h m e n u m e r a t e s n

  • d

e s i n

  • r

d e r

  • f

h

  • w

f a r a w a y t h e y a r e f r

  • m

t h e s t a r t n

  • d

e

D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

1 5 5 3 4 4 6 3 3 1 1 7 2 9 4 8 1 1

B l a x h a l l

slide-13
SLIDE 13

D i j k s t r a ' s a l g

  • r

i t h m

O n c e w e h a v e t h e s e d i s t a n c e s , w e c a n u s e t h e m t

  • fj

n d t h e s h

  • r

t e s t p a t h t

  • a

n y n

  • d

e ! e . g . t a k e Ma l d

  • n

I d e a : w

  • r

k

  • u

t w h i c h e d g e w e s h

  • u

l d t a k e

  • n

t h e fj n a l l e g

  • f

t h e j

  • u

r n e y

D u n w i c h , → B l a x h a l l 1 5 , → H a r w i c h 5 3 , → F e e r i n g 6 1 , → T i p t r e e 6 4 , → C l a c t

  • n

7 , → Ma l d

  • n

7 2 →

D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

1 5 5 3 4 4 6 3 3 1 1 7 2 9 4 8 1 1

B l a x h a l l

slide-14
SLIDE 14

D i j k s t r a ' s a l g

  • r

i t h m

O n c e w e h a v e t h e s e d i s t a n c e s , w e c a n u s e t h e m t

  • fj

n d t h e s h

  • r

t e s t p a t h t

  • a

n y n

  • d

e ! e . g . t a k e Ma l d

  • n

I d e a : w

  • r

k

  • u

t w h i c h e d g e w e s h

  • u

l d t a k e

  • n

t h e fj n a l l e g

  • f

t h e j

  • u

r n e y

D u n w i c h , → B l a x h a l l 1 5 , → H a r w i c h 5 3 , → F e e r i n g 6 1 , → T i p t r e e 6 4 , → C l a c t

  • n

7 , → Ma l d

  • n

7 2 →

D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

1 5 5 3 4 4 6 3 3 1 1 7 2 9 4 8 1 1

B l a x h a l l

T

  • a

r r i v e a t Ma l d

  • n

, w e m u s t t a k e t h e e d g e f r

  • m

F e e r i n g , T i p t r e e

  • r

C l a c t

  • n
slide-15
SLIDE 15

D i j k s t r a ' s a l g

  • r

i t h m

O n c e w e h a v e t h e s e d i s t a n c e s , w e c a n u s e t h e m t

  • fj

n d t h e s h

  • r

t e s t p a t h t

  • a

n y n

  • d

e ! e . g . t a k e Ma l d

  • n

I d e a : w

  • r

k

  • u

t w h i c h e d g e w e s h

  • u

l d t a k e

  • n

t h e fj n a l l e g

  • f

t h e j

  • u

r n e y

D u n w i c h , → B l a x h a l l 1 5 , → H a r w i c h 5 3 , → F e e r i n g 6 1 , → T i p t r e e 6 4 , → C l a c t

  • n

7 , → Ma l d

  • n

7 2 →

D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

1 5 5 3 4 4 6 3 3 1 1 7 2 9 4 8 1 1

B l a x h a l l

D u n w i c h C l a c t

  • n

: → 7 C l a c t

  • n

Ma l d

  • n

e d g e : → 4 S

  • c
  • m

i n g v i a t h i s e d g e : 1 1 D u n w i c h Ma l d

  • n

: → 7 2 Tii s r

  • u

t e w

  • n

' t w

  • r

k !

slide-16
SLIDE 16

D i j k s t r a ' s a l g

  • r

i t h m

O n c e w e h a v e t h e s e d i s t a n c e s , w e c a n u s e t h e m t

  • fj

n d t h e s h

  • r

t e s t p a t h t

  • a

n y n

  • d

e ! e . g . t a k e Ma l d

  • n

I d e a : w

  • r

k

  • u

t w h i c h e d g e w e s h

  • u

l d t a k e

  • n

t h e fj n a l l e g

  • f

t h e j

  • u

r n e y

D u n w i c h , → B l a x h a l l 1 5 , → H a r w i c h 5 3 , → F e e r i n g 6 1 , → T i p t r e e 6 4 , → C l a c t

  • n

7 , → Ma l d

  • n

7 2 →

D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

1 5 5 3 4 4 6 3 3 1 1 7 2 9 4 8 1 1

B l a x h a l l

D u n w i c h T i p t r e e : → 6 4 T i p t r e e Ma l d

  • n

e d g e : → 8 S

  • c
  • m

i n g v i a t h i s e d g e : 7 2 D u n w i c h Ma l d

  • n

: → 7 2 Tii s r

  • u

t e w i l l w

  • r

k !

slide-17
SLIDE 17

D i j k s t r a ' s a l g

  • r

i t h m

O n c e w e h a v e t h e s e d i s t a n c e s , w e c a n u s e t h e m t

  • fj

n d t h e s h

  • r

t e s t p a t h t

  • a

n y n

  • d

e ! e . g . t a k e Ma l d

  • n

I d e a : w

  • r

k

  • u

t w h i c h e d g e w e s h

  • u

l d t a k e

  • n

t h e fj n a l l e g

  • f

t h e j

  • u

r n e y

D u n w i c h , → B l a x h a l l 1 5 , → H a r w i c h 5 3 , → F e e r i n g 6 1 , → T i p t r e e 6 4 , → C l a c t

  • n

7 , → Ma l d

  • n

7 2 →

D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

1 5 5 3 4 4 6 3 3 1 1 7 2 9 4 8 1 1

B l a x h a l l

N

  • w

w e k n

  • w

w e c a n c

  • m

e v i a T i p t r e e – s

  • j

u s t r e p e a t t h e p r

  • c

e s s t

  • w
  • r

k

  • u

t h

  • w

t

  • g

e t t

  • T

i p t r e e !

slide-18
SLIDE 18

D i j k s t r a ' s a l g

  • r

i t h m

O n c e w e h a v e t h e s e d i s t a n c e s , w e c a n u s e t h e m t

  • fj

n d t h e s h

  • r

t e s t p a t h t

  • a

n y n

  • d

e ! e . g . t a k e Ma l d

  • n

I d e a : w

  • r

k

  • u

t w h i c h e d g e w e s h

  • u

l d t a k e

  • n

t h e fj n a l l e g

  • f

t h e j

  • u

r n e y

D u n w i c h , → B l a x h a l l 1 5 , → H a r w i c h 5 3 , → F e e r i n g 6 1 , → T i p t r e e 6 4 , → C l a c t

  • n

7 , → Ma l d

  • n

7 2 →

D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

1 5 5 3 4 4 6 3 3 1 1 7 2 9 4 8 1 1

B l a x h a l l

D u n w i c h H a r w i c h : → 5 3 H a r w i c h T i p t r e e e d g e : → 3 1 S

  • c
  • m

i n g v i a t h i s e d g e : 8 4 D u n w i c h T i p t r e e : → 6 4 Tii s r

  • u

t e w

  • n

' t w

  • r

k !

slide-19
SLIDE 19

D i j k s t r a ' s a l g

  • r

i t h m

O n c e w e h a v e t h e s e d i s t a n c e s , w e c a n u s e t h e m t

  • fj

n d t h e s h

  • r

t e s t p a t h t

  • a

n y n

  • d

e ! e . g . t a k e Ma l d

  • n

I d e a : w

  • r

k

  • u

t w h i c h e d g e w e s h

  • u

l d t a k e

  • n

t h e fj n a l l e g

  • f

t h e j

  • u

r n e y

D u n w i c h , → B l a x h a l l 1 5 , → H a r w i c h 5 3 , → F e e r i n g 6 1 , → T i p t r e e 6 4 , → C l a c t

  • n

7 , → Ma l d

  • n

7 2 →

D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

1 5 5 3 4 4 6 3 3 1 1 7 2 9 4 8 1 1

B l a x h a l l

D u n w i c h F e e r i n g : → 6 1 F e e r i n g T i p t r e e e d g e : → 3 S

  • c
  • m

i n g v i a t h i s e d g e : 6 4 D u n w i c h T i p t r e e : → 6 4 Tii s r

  • u

t e w i l l w

  • r

k !

slide-20
SLIDE 20

D i j k s t r a ' s a l g

  • r

i t h m

O n c e w e h a v e t h e s e d i s t a n c e s , w e c a n u s e t h e m t

  • fj

n d t h e s h

  • r

t e s t p a t h t

  • a

n y n

  • d

e ! e . g . t a k e Ma l d

  • n

I d e a : w

  • r

k

  • u

t w h i c h e d g e w e s h

  • u

l d t a k e

  • n

t h e fj n a l l e g

  • f

t h e j

  • u

r n e y

D u n w i c h , → B l a x h a l l 1 5 , → H a r w i c h 5 3 , → F e e r i n g 6 1 , → T i p t r e e 6 4 , → C l a c t

  • n

7 , → Ma l d

  • n

7 2 →

D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

1 5 5 3 4 4 6 3 3 1 1 7 2 9 4 8 1 1

B l a x h a l l

R e p e a t t h e p r

  • c

e s s f

  • r

F e e r i n g

slide-21
SLIDE 21

D i j k s t r a ' s a l g

  • r

i t h m

O n c e w e h a v e t h e s e d i s t a n c e s , w e c a n u s e t h e m t

  • fj

n d t h e s h

  • r

t e s t p a t h t

  • a

n y n

  • d

e ! e . g . t a k e Ma l d

  • n

I d e a : w

  • r

k

  • u

t w h i c h e d g e w e s h

  • u

l d t a k e

  • n

t h e fj n a l l e g

  • f

t h e j

  • u

r n e y

D u n w i c h , → B l a x h a l l 1 5 , → H a r w i c h 5 3 , → F e e r i n g 6 1 , → T i p t r e e 6 4 , → C l a c t

  • n

7 , → Ma l d

  • n

7 2 →

D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

1 5 5 3 4 4 6 3 3 1 1 7 2 9 4 8 1 1

B l a x h a l l

D u n w i c h B l a x h a l l : → 1 5 B l a x h a l l F e e r i n g e d g e : → 4 6 S

  • c
  • m

i n g v i a t h i s e d g e : 6 1 D u n w i c h F e e r i n g : → 6 1 Tii s r

  • u

t e w i l l w

  • r

k !

slide-22
SLIDE 22

D i j k s t r a ' s a l g

  • r

i t h m

O n c e w e h a v e t h e s e d i s t a n c e s , w e c a n u s e t h e m t

  • fj

n d t h e s h

  • r

t e s t p a t h t

  • a

n y n

  • d

e ! e . g . t a k e Ma l d

  • n

I d e a : w

  • r

k

  • u

t w h i c h e d g e w e s h

  • u

l d t a k e

  • n

t h e fj n a l l e g

  • f

t h e j

  • u

r n e y

D u n w i c h , → B l a x h a l l 1 5 , → H a r w i c h 5 3 , → F e e r i n g 6 1 , → T i p t r e e 6 4 , → C l a c t

  • n

7 , → Ma l d

  • n

7 2 →

D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

1 5 5 3 4 4 6 3 3 1 1 7 2 9 4 8 1 1

B l a x h a l l

R e p e a t t h e p r

  • c

e s s f

  • r

B l a x h a l l

slide-23
SLIDE 23

D i j k s t r a ' s a l g

  • r

i t h m

O n c e w e h a v e t h e s e d i s t a n c e s , w e c a n u s e t h e m t

  • fj

n d t h e s h

  • r

t e s t p a t h t

  • a

n y n

  • d

e ! e . g . t a k e Ma l d

  • n

I d e a : w

  • r

k

  • u

t w h i c h e d g e w e s h

  • u

l d t a k e

  • n

t h e fj n a l l e g

  • f

t h e j

  • u

r n e y

D u n w i c h , → B l a x h a l l 1 5 , → H a r w i c h 5 3 , → F e e r i n g 6 1 , → T i p t r e e 6 4 , → C l a c t

  • n

7 , → Ma l d

  • n

7 2 →

D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

1 5 5 3 4 4 6 3 3 1 1 7 2 9 4 8 1 1

B l a x h a l l

D u n w i c h H a r w i c h : → 5 3 H a r w i c h B l a x h a l l e d g e : → 4 S

  • c
  • m

i n g v i a t h i s e d g e : 9 3 D u n w i c h B l a x h a l l : → 1 5 Tii s r

  • u

t e w

  • n

' t w

  • r

k !

slide-24
SLIDE 24

D i j k s t r a ' s a l g

  • r

i t h m

O n c e w e h a v e t h e s e d i s t a n c e s , w e c a n u s e t h e m t

  • fj

n d t h e s h

  • r

t e s t p a t h t

  • a

n y n

  • d

e ! e . g . t a k e Ma l d

  • n

I d e a : w

  • r

k

  • u

t w h i c h e d g e w e s h

  • u

l d t a k e

  • n

t h e fj n a l l e g

  • f

t h e j

  • u

r n e y

D u n w i c h , → B l a x h a l l 1 5 , → H a r w i c h 5 3 , → F e e r i n g 6 1 , → T i p t r e e 6 4 , → C l a c t

  • n

7 , → Ma l d

  • n

7 2 →

D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

1 5 5 3 4 4 6 3 3 1 1 7 2 9 4 8 1 1

B l a x h a l l

D u n w i c h D u n w i c h : → D u n w i c h B l a x h a l l e d g e : → 1 5 S

  • c
  • m

i n g v i a t h i s e d g e : 1 5 D u n w i c h B l a x h a l l : → 1 5 Tii s r

  • u

t e w i l l w

  • r

k !

slide-25
SLIDE 25

D i j k s t r a ' s a l g

  • r

i t h m

O n c e w e h a v e t h e s e d i s t a n c e s , w e c a n u s e t h e m t

  • fj

n d t h e s h

  • r

t e s t p a t h t

  • a

n y n

  • d

e ! e . g . t a k e Ma l d

  • n

I d e a : w

  • r

k

  • u

t w h i c h e d g e w e s h

  • u

l d t a k e

  • n

t h e fj n a l l e g

  • f

t h e j

  • u

r n e y

D u n w i c h , → B l a x h a l l 1 5 , → H a r w i c h 5 3 , → F e e r i n g 6 1 , → T i p t r e e 6 4 , → C l a c t

  • n

7 , → Ma l d

  • n

7 2 →

D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

1 5 5 3 4 4 6 3 3 1 1 7 2 9 4 8 1 1

B l a x h a l l

N

  • w

w e h a v e f

  • u

n d

  • u

r w a y b a c k t

  • t

h e s t a r t n

  • d

e a n d h a v e t h e s h

  • r

t e s t p a t h !

slide-26
SLIDE 26

D i j k s t r a ' s a l g

  • r

i t h m

L e t S = { s t a r t n

  • d

e } → Wh i l e n

  • t

a l l n

  • d

e s a r e i n S ,

  • F
  • r

e a c h n

  • d

e x d → i n S , a n d e a c h n e i g h b

  • u

r y

  • f

x , c a l c u l a t e d ' = d + c

  • s

t

  • f

e d g e f r

  • m

x t

  • y
  • T

a k e t h e s m a l l e s t d ' c a l c u l a t e d a n d i t s y a n d a d d y d ' → t

  • S

Tii s c

  • m

p u t e s t h e s h

  • r

t e s t d i s t a n c e t

  • e

a c h n

  • d

e , f r

  • m

w h i c h w e c a n r e c

  • n

s t r u c t t h e s h

  • r

t e s t p a t h t

  • a

n y n

  • d

e Wh a t i s t h e e ffjc i e n c y

  • f

t h i s a l g

  • r

i t h m ?

slide-27
SLIDE 27

D i j k s t r a ' s a l g

  • r

i t h m

L e t S = { s t a r t n

  • d

e } → Wh i l e n

  • t

a l l n

  • d

e s a r e i n S ,

  • F
  • r

e a c h n

  • d

e x d → i n S , a n d e a c h n e i g h b

  • u

r y

  • f

x , c a l c u l a t e d ' = d + c

  • s

t

  • f

e d g e f r

  • m

x t

  • y
  • T

a k e t h e s m a l l e s t d ' c a l c u l a t e d a n d i t s y a n d a d d y d ' → t

  • S

Tii s c

  • m

p u t e s t h e s h

  • r

t e s t d i s t a n c e t

  • e

a c h n

  • d

e , f r

  • m

w h i c h w e c a n r e c

  • n

s t r u c t t h e s h

  • r

t e s t p a t h t

  • a

n y n

  • d

e Wh a t i s t h e e ffjc i e n c y

  • f

t h i s a l g

  • r

i t h m ?

W e a d d

  • n

e n

  • d

e t

  • S

e a c h t i m e t h r

  • u

g h t h e l

  • p

– l

  • p

r u n s | V | t i m e s E a c h t i m e t h r

  • u

g h t h e

  • u

t e r l

  • p

, w e l

  • p

t h r

  • u

g h a l l n

  • d

e s i n S , w h i c h b y t h e e n d c

  • n

t a i n s | V | n

  • d

e s T

  • t

a l : O ( | V E | ) !

slide-28
SLIDE 28

D i j k s t r a ' s a l g

  • r

i t h m , m a d e e ffj c i e n t

Tie a l g

  • r

i t h m s

  • f

a r i s O ( | V |

2

) Tii s i s b e c a u s e t h i s s t e p :

  • F
  • r

a l l n

  • d

e s a d j a c e n t t

  • a

n

  • d

e i n S , c a l c u l a t e t h e i r d i s t a n c e f r

  • m

t h e s t a r t n

  • d

e , a n d p i c k t h e c l

  • s

e s t

  • n

e

t a k e s O ( | V | ) t i m e , a n d w e e x e c u t e i t

  • n

c e f

  • r

e v e r y n

  • d

e i n t h e g r a p h H

  • w

c a n w e m a k e t h i s f a s t e r ?

slide-29
SLIDE 29

D i j k s t r a ' s a l g

  • r

i t h m , m a d e e ffj c i e n t

A n s w e r : u s e a p r i

  • r

i t y q u e u e ! O u r p r i

  • r

i t y q u e u e w i l l c

  • n

t a i n :

  • a

l l n e i g h b

  • u

r s

  • f

n

  • d

e s i n S ( t h e y e l l

  • w

n

  • d

e s f r

  • m
  • u

r d i a g r a m )

  • t
  • g

e t h e r w i t h t h e i r d i s t a n c e s

I n s t e a d

  • f

s e a r c h i n g f

  • r

t h e n e a r e s t n e i g h b

  • u

r t

  • S

, w e c a n j u s t a s k t h e p r i

  • r

i t y q u e u e f

  • r

t h e n

  • d

e w i t h t h e s m a l l e s t d i s t a n c e Wh e n e v e r w e a d d a n

  • d

e t

  • S

, w e w i l l a d d e a c h

  • f

i t s n e i g h b

  • u

r s t h a t a r e n

  • t

i n S t

  • t

h e p r i

  • r

i t y q u e u e

slide-30
SLIDE 30

D i j k s t r a ' s a l g

  • r

i t h m

S = { D u n w i c h } → Q = { B l a x h a l l 1 5 , H a r w i c h 5 3 } R e m

  • v

e t h e s m a l l e s t e l e m e n t

  • f

Q , “ B l a x h a l l 1 5 ” . A d d B l a x h a l l 1 5 → t

  • S

, a n d a d d B l a x h a l l ' s n e i g h b

  • u

r s t

  • Q

.

D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

1 5 5 3 4 4 6 3 3 1 1 7 2 9 4 8 1 1

B l a x h a l l

slide-31
SLIDE 31

D i j k s t r a ' s a l g

  • r

i t h m

S = { D u n w i c h , → B l a x h a l l 1 5 } → Q = { H a r w i c h 5 3 , F e e r i n g 6 1 , H a r w i c h 5 5 } R e m

  • v

e t h e s m a l l e s t e l e m e n t

  • f

Q , “ H a r w i c h 5 3 ” . A d d H a r w i c h 5 3 t

  • S

, → a n d a d d H a r w i c h ' s n e i g h b

  • u

r s t

  • Q

.

D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

1 5 5 3 4 4 6 3 3 1 1 7 2 9 4 8 1 1

B l a x h a l l

slide-32
SLIDE 32

D i j k s t r a ' s a l g

  • r

i t h m

S = { D u n w i c h , → B l a x h a l l 1 5 , → H a r w i c h 5 3 } → Q = { F e e r i n g 6 1 , H a r w i c h 5 5 , T i p t r e e 8 4 , C l a c t

  • n

7 } R e m

  • v

e t h e s m a l l e s t e l e m e n t

  • f

Q , “ H a r w i c h 5 5 ” . O h ! H a r w i c h i s a l r e a d y i n S . S

  • j

u s t i g n

  • r

e i t .

D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

1 5 5 3 4 4 6 3 3 1 1 7 2 9 4 8 1 1

B l a x h a l l

slide-33
SLIDE 33

D i j k s t r a ' s a l g

  • r

i t h m

S = { D u n w i c h , → B l a x h a l l 1 5 , → H a r w i c h 5 3 } → Q = { F e e r i n g 6 1 , T i p t r e e 8 4 , C l a c t

  • n

7 } R e m

  • v

e t h e s m a l l e s t e l e m e n t

  • f

Q , “ F e e r i n g 6 1 ” . A d d F e e r i n g 6 1 t

  • S

, → a n d a d d F e e r i n g ' s n e i g h b

  • u

r s t

  • Q

.

D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

1 5 5 3 4 4 6 3 3 1 1 7 2 9 4 8 1 1

B l a x h a l l

slide-34
SLIDE 34

D i j k s t r a ' s a l g

  • r

i t h m

S = { D u n w i c h , → B l a x h a l l 1 5 , → H a r w i c h 5 3 , → F e e r i n g 6 1 } → Q = { T i p t r e e 8 4 , T i p t r e e 6 4 , Ma l d

  • n

7 2 , C l a c t

  • n

7 }

D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

1 5 5 3 4 4 6 3 3 1 1 7 2 9 4 8 1 1

B l a x h a l l

slide-35
SLIDE 35

D i j k s t r a ' s a l g

  • r

i t h m , e ffj c i e n t l y

L e t S = { s t a r t n

  • d

e } a n d Q = { } → F

  • r

e a c h

  • f

t h e s t a r t n

  • d

e ' s n e i g h b

  • u

r s x , w h e r e t h e e d g e h a s w e i g h t d , a d d x t

  • Q

w i t h p r i

  • r

i t y d Wh i l e n

  • t

a l l n

  • d

e s a r e i n S ,

  • R

e m

  • v

e t h e n

  • d

e y f r

  • m

Q t h a t h a s t h e s m a l l e s t p r i

  • r

i t y ( d i s t a n c e )

  • I

f y i s i n S , d

  • n
  • t

h i n g

  • O

t h e r w i s e , a d d y d t

  • S

a n d f

  • r

a l l

  • f

→ y ' s n e i g h b

  • u

r s z a d d z t

  • Q

w i t h p r i

  • r

i t y “ d + w e i g h t

  • f

e d g e f r

  • m

y t

  • z

slide-36
SLIDE 36

D i j k s t r a ' s a l g

  • r

i t h m , e ffj c i e n t l y

L e t S = { s t a r t n

  • d

e } a n d Q = { } → F

  • r

e a c h

  • f

t h e s t a r t n

  • d

e ' s n e i g h b

  • u

r s x , w h e r e t h e e d g e h a s w e i g h t d , a d d x t

  • Q

w i t h p r i

  • r

i t y d Wh i l e n

  • t

a l l n

  • d

e s a r e i n S ,

  • R

e m

  • v

e t h e n

  • d

e y f r

  • m

Q t h a t h a s t h e s m a l l e s t p r i

  • r

i t y ( d i s t a n c e )

  • I

f y i s i n S , d

  • n
  • t

h i n g

  • O

t h e r w i s e , a d d y d t

  • S

a n d f

  • r

a l l

  • f

→ y ' s n e i g h b

  • u

r s z a d d z t

  • Q

w i t h p r i

  • r

i t y “ d + w e i g h t

  • f

e d g e f r

  • m

y t

  • z

” Ma x i m u m s i z e

  • f

Q i s | E | , t

  • t

a l

  • f

O ( | V | + | E | ) p r i

  • r

i t y q u e u e

  • p

e r a t i

  • n

s , s

  • t
  • t

a l t i m e : O ( ( | V | + | E | ) l

  • g

| E | )

  • r

O ( n l

  • g

n ) w h e r e n = | V | + | E |

slide-37
SLIDE 37

M i n i m u m s p a n n i n g t r e e s

A s p a n n i n g t r e e

  • f

a g r a p h i s a s u b g r a p h ( a g r a p h

  • b

t a i n e d b y d e l e t i n g s

  • m

e

  • f

t h e e d g e s ) w h i c h :

  • i

s a c y c l i c

  • i

s c

  • n

n e c t e d

A m i n i m u m s p a n n i n g t r e e i s

  • n

e w h e r e t h e t

  • t

a l w e i g h t

  • f

t h e e d g e s i s a s l

  • w

a s p

  • s

s i b l e

D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

1 5 4 3 1 7 2 9 8

B l a x h a l l

slide-38
SLIDE 38

M i n i m u m s p a n n i n g t r e e s

D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

1 5 4 3 1 7 2 9 8

B l a x h a l l D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

1 5 5 3 4 4 6 3 3 1 1 7 2 9 4 8 1 1

B l a x h a l l

slide-39
SLIDE 39

P r i m ' s a l g

  • r

i t h m

W e w i l l b u i l d a m i n i m u m s p a n n i n g t r e e b y s t a r t i n g w i t h n

  • e

d g e s a n d a d d i n g e d g e s u n t i l t h e g r a p h i s c

  • n

n e c t e d K e e p a s e t S

  • f

a l l t h e n

  • d

e s t h a t a r e i n t h e t r e e s

  • f

a r , i n i t i a l l y c

  • n

t a i n i n g

  • n

e a r b i t r a r y n

  • d

e Wh i l e t h e r e i s a n

  • d

e n

  • t

i n S :

  • P

i c k t h e l

  • w

e s t

  • w

e i g h t e d g e b e t w e e n a n

  • d

e i n S a n d a n

  • d

e n

  • t

i n S

  • A

d d t h a t e d g e t

  • t

h e s p a n n i n g t r e e , a n d a d d t h e n

  • d

e t

  • S
slide-40
SLIDE 40

M i n i m u m s p a n n i n g t r e e s

S = { F e e r i n g } L

  • w

e s t

  • w

e i g h t e d g e f r

  • m

S t

  • n
  • t
  • S

i s F e e r i n g T i p t r e e →

D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

1 5 5 3 4 4 6 3 3 1 1 7 2 9 4 8 1 1

B l a x h a l l D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g B l a x h a l l

slide-41
SLIDE 41

M i n i m u m s p a n n i n g t r e e s

S = { F e e r i n g , T i p t r e e } L

  • w

e s t

  • w

e i g h t e d g e f r

  • m

S t

  • n
  • t
  • S

i s T i p t r e e Ma l d

  • n

D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

1 5 5 3 4 4 6 3 3 1 1 7 2 9 4 8 1 1

B l a x h a l l D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

3

B l a x h a l l

slide-42
SLIDE 42

M i n i m u m s p a n n i n g t r e e s

S = { F e e r i n g , T i p t r e e , Ma l d

  • n

} L

  • w

e s t

  • w

e i g h t e d g e f r

  • m

S t

  • n
  • t
  • S

i s T i p t r e e C l a c t

  • n

D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

1 5 5 3 4 4 6 3 3 1 1 7 2 9 4 8 1 1

B l a x h a l l D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

3 8

B l a x h a l l

slide-43
SLIDE 43

M i n i m u m s p a n n i n g t r e e s

S = { F e e r i n g , T i p t r e e , Ma l d

  • n

, C l a c t

  • n

} L

  • w

e s t

  • w

e i g h t e d g e f r

  • m

S t

  • n
  • t
  • S

i s C l a c t

  • n

H a r w i c h →

D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

1 5 5 3 4 4 6 3 3 1 1 7 2 9 4 8 1 1

B l a x h a l l D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

3 2 9 8

B l a x h a l l

slide-44
SLIDE 44

M i n i m u m s p a n n i n g t r e e s

S = { F e e r i n g , T i p t r e e , Ma l d

  • n

, C l a c t

  • n

, H a r w i c h } L

  • w

e s t

  • w

e i g h t e d g e f r

  • m

S t

  • n
  • t
  • S

i s H a r w i c h B l a x h a l l →

D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

1 5 5 3 4 4 6 3 3 1 1 7 2 9 4 8 1 1

B l a x h a l l D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

3 1 7 2 9 8

B l a x h a l l

slide-45
SLIDE 45

M i n i m u m s p a n n i n g t r e e s

S = { F e e r i n g , T i p t r e e , Ma l d

  • n

, C l a c t

  • n

, H a r w i c h , B l a x h a l l } L

  • w

e s t

  • w

e i g h t e d g e f r

  • m

S t

  • n
  • t
  • S

i s B l a x h a l l D u n w i c h →

D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

1 5 5 3 4 4 6 3 3 1 1 7 2 9 4 8 1 1

B l a x h a l l D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

4 3 1 7 2 9 8

B l a x h a l l

slide-46
SLIDE 46

D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

1 5 4 3 1 7 2 9 8

B l a x h a l l

M i n i m u m s p a n n i n g t r e e s

N

  • t

i c e : w e g e t a m i n i m u m s p a n n i n g t r e e w h a t e v e r n

  • d

e w e s t a r t a t ! F

  • r

t h i s g r a p h , b e c a u s e t h e r e i s

  • n

l y

  • n

e m i n i m u m s p a n n i n g t r e e , w e a l w a y s g e t t h a t

  • n

e .

D u n w i c h H a r w i c h T i p t r e e C l a c t

  • n

Ma l d

  • n

F e e r i n g

1 5 5 3 4 4 6 3 3 1 1 7 2 9 4 8 1 1

B l a x h a l l

slide-47
SLIDE 47

P r i m ' s a l g

  • r

i t h m , e ffj c i e n t l y

Tie

  • p

e r a t i

  • n
  • P

i c k t h e l

  • w

e s t

  • w

e i g h t e d g e b e t w e e n a n

  • d

e i n S a n d a n

  • d

e n

  • t

i n S

t a k e s O ( n ) t i m e i f w e ' r e n

  • t

c a r e f u l ! Tie n P r i m ' s a l g

  • r

i t h m w i l l b e O ( n

2

) T

  • i

m p l e m e n t P r i m ' s a l g

  • r

i t h m , u s e a p r i

  • r

i t y q u e u e c

  • n

t a i n i n g a l l e d g e s b e t w e e n S a n d n

  • t
  • S
  • Wh

e n e v e r y

  • u

a d d a n

  • d

e t

  • S

, a d d a l l

  • f

i t s e d g e s t

  • n
  • d

e s i n n

  • t
  • S

t

  • a

p r i

  • r

i t y q u e u e

  • T
  • fj

n d t h e l

  • w

e s t

  • w

e i g h t e d g e , j u s t fj n d t h e m i n i m u m e l e m e n t

  • f

t h e p r i

  • r

i t y q u e u e

  • J

u s t l i k e i n D i j k s t r a ' s a l g

  • r

i t h m , t h e p r i

  • r

i t y q u e u e m i g h t r e t u r n a n e d g e b e t w e e n t w

  • e

l e m e n t s t h a t a r e n

  • w

i n S : i g n

  • r

e i t

N e w t i m e : O ( n l

  • g

n ) : )

slide-48
SLIDE 48

S u m m a r y

D i j k s t r a ' s a l g

  • r

i t h m – fj n d i n g s h

  • r

t e s t p a t h s i n w e i g h t e d g r a p h s – s

  • m

e e x t e n s i

  • n

s ( n

  • t

i n c

  • u

r s e ) :

  • B

e l l m a n

  • F
  • r

d : w

  • r

k s w h e n w e i g h t s a r e n e g a t i v e

  • A

*

  • f

a s t e r b u t a s s u m e s t h e t r i a n g l e i n e q u a l i t y

P r i m ' s a l g

  • r

i t h m – fj n d i n g m i n i m u m s p a n n i n g t r e e s B

  • t

h a r e g r e e d y a l g

  • r

i t h m s – t h e y r e p e a t e d l y fj n d t h e “ b e s t ” n e x t e l e m e n t

  • C
  • m

m

  • n

s t y l e

  • f

a l g

  • r

i t h m d e s i g n

B

  • t

h u s e a p r i

  • r

i t y q u e u e t

  • g

e t O ( n l

  • g

n ) Ma n y m a n y m a n y m

  • r

e g r a p h a l g

  • r

i t h m s

  • U

n f

  • r

t u n a t e l y t h e b

  • k

d

  • e

s n ' t m e n t i

  • n

m a n y – s e e

h t t p : / / e n . w i k i p e d i a .

  • r

g / w i k i / L i s t _

  • f

_ a l g

  • r

i t h m s # G r a p h _ a l g

  • r

i t h m s

f

  • r

a l

  • n

g l i s t