2 - 3 t r e e s , A A t r e e s , B - t r e e - - PowerPoint PPT Presentation

2 3 t r e e s a a t r e e s b t r e e s a n n o u n c e m
SMART_READER_LITE
LIVE PREVIEW

2 - 3 t r e e s , A A t r e e s , B - t r e e - - PowerPoint PPT Presentation

2 - 3 t r e e s , A A t r e e s , B - t r e e s A n n o u n c e m e n t C o n s u l t a t i o n t i m e s 1 0 - 1 2 , r o o m E S 6 1 ! Mo n d a y 9 Ma y t h


slide-1
SLIDE 1

2

  • 3

t r e e s , A A t r e e s , B

  • t

r e e s

slide-2
SLIDE 2

A n n

  • u

n c e m e n t

C

  • n

s u l t a t i

  • n

t i m e s – 1

  • 1

2 , r

  • m

E S 6 1 !

  • Mo

n d a y 9

t h

Ma y

  • Tiu

r s d a y 1 2

t h

Ma y

  • Tiu

r s d a y 1 9

t h

Ma y

  • Mo

n d a y 2 3

r d

Ma y

N

  • p

l a n – j u s t c

  • m

e a n d a s k q u e s t i

  • n

s P . S . d

  • n

' t f

  • r

g e t t h e r e a r e e x e r c i s e s

  • n

t h e w e b s i t e !

slide-3
SLIDE 3

2

  • 3

t r e e s

I n a b i n a r y t r e e , e a c h n

  • d

e h a s t w

  • c

h i l d r e n I n a 2

  • 3

t r e e , e a c h n

  • d

e h a s e i t h e r 2 c h i l d r e n ( a 2

  • n
  • d

e )

  • r

3 ( a 3

  • n
  • d

e ) A 2

  • n
  • d

e i s a n

  • r

m a l B S T n

  • d

e :

  • O

n e d a t a v a l u e x , w h i c h i s g r e a t e r t h a n a l l v a l u e s i n t h e l e f t s u b t r e e a n d l e s s t h a n a l l v a l u e s i n t h e r i g h t s u b t r e e

A 3

  • n
  • d

e i s d i fg e r e n t :

  • T

w

  • d

a t a v a l u e s x a n d y

  • A

l l t h e v a l u e s i n t h e l e f t s u b t r e e a r e l e s s t h a n x

  • A

l l t h e v a l u e s i n t h e m i d d l e s u b t r e e a r e b e t w e e n x a n d y

  • A

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

slide-4
SLIDE 4

2

  • 3

t r e e s

A n e x a m p l e

  • f

a 2

  • 3

t r e e :

slide-5
SLIDE 5

W h y 2

  • 3

t r e e s ?

Wi t h a 2

  • 3

t r e e w e c a n m a i n t a i n t h e i n v a r i a n t :

  • Tie

t r e e i s a l w a y s p e r f e c t l y b a l a n c e d !

I n v a r i a n t : a l l c h i l d r e n

  • f

e a c h n

  • d

e a l w a y s h a v e t h e s a m e h e i g h t

  • I

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

  • n
  • l

e a f 2

  • n
  • d

e h a s 2 c h i l d r e n

  • A

n y n

  • n
  • l

e a f 3

  • n
  • d

e h a s 3 c h i l d r e n

Tii s w a s n ' t p

  • s

s i b l e w i t h b i n a r y s e a r c h t r e e s

slide-6
SLIDE 6

W h i c h

  • f

t h e s e a r e 2

  • 3

t r e e s ?

7 2 1 11 5 1 71 9 1 5 9 1 3 7 2 1 11 5 1 71 9 1 5 9 7 2 1 11 5 1 71 9 1 9 1 3 7 2 1 1 1 5 1 7 1 9 1 9 1 3 5 4 3

slide-7
SLIDE 7

W h i c h

  • f

t h e s e a r e 2

  • 3

t r e e s ?

7 2 1 11 5 1 71 9 1 5 9 1 3 7 2 1 11 5 1 71 9 1 5 9 7 2 1 11 5 1 71 9 1 9 1 3 7 2 1 1 1 5 1 7 1 9 1 9 1 3 5 4 3 O n l y t h i s

  • n

e ( w h y ? )

slide-8
SLIDE 8

I n s e r t i

  • n

i n t

  • a

2

  • 3

t r e e

T

  • i

n s e r t a v a l u e ( e . g . 4 ) i n t

  • a

2

  • 3

t r e e , w e s t a r t b y d

  • i

n g a n

  • r

m a l i n s e r t i

  • n

. . .

7 2 1 1 1 5 1 7 1 9 1 5 9 1 3 4 W e b r

  • k

e t h e b a l a n c e i n v a r i a n t !

slide-9
SLIDE 9

I n s e r t i

  • n

i n t

  • a

2

  • 3

t r e e

T

  • fj

x t h e b a l a n c e i n v a r i a n t , w e a b s

  • r

b t h e b a d n

  • d

e i n t

  • i

t s p a r e n t !

7 2 1 1 1 5 1 7 1 9 1 9 1 3 5 4 4 g

  • t

a b s

  • r

b e d i n t

  • 5
slide-10
SLIDE 10

I n s e r t i

  • n

i n t

  • a

2

  • 3

t r e e

N

  • w

s u p p

  • s

e w e w a n t t

  • i

n s e r t 3 . W e ' l l a b s

  • r

b i t i n t

  • i

t s p a r e n t a s b e f

  • r

e . . .

7 2 1 1 1 5 1 7 1 9 1 9 1 3 5 4 3

slide-11
SLIDE 11

I n s e r t i

  • n

i n t

  • a

2

  • 3

t r e e

W e g e t a 4

  • n
  • d

e , w h i c h i s n

  • t

a l l

  • w

e d ! W e fj x t h i s b y a m e t h

  • d

c a l l e d s p l i t t i n g .

7 2 1 1 1 5 1 7 1 9 1 9 1 3 5 4 3

slide-12
SLIDE 12

S p l i t t i n g a 4

  • n
  • d

e

T

  • g

e t r i d

  • f

a 4

  • n
  • d

e , w e s p l i t i t i n t

  • s

e v e r a l 2

  • n
  • d

e s ! Tii s c r e a t e s a n e x t r a l e v e l i n t h e t r e e . W e w i l l fj x t h i s b y a b s

  • r

b i n g t h e r e d n

  • d

e i n t

  • i

t s p a r e n t .

x y z A B C D y x z A B C D

slide-13
SLIDE 13

I n s e r t i

  • n

i n t

  • a

2

  • 3

t r e e

A f t e r s p l i t t i n g , w e a b s

  • r

b t h e “ e x t r a l e v e l ” n

  • d

e i n t

  • i

t s p a r e n t .

7 2 1 1 1 5 1 7 1 9 1 9 1 3 5 4 3 A b s

  • r

b 4 i n t

  • 2

.

slide-14
SLIDE 14

I n s e r t i

  • n

i n t

  • a

2

  • 3

t r e e

W e r e s t

  • r

e d t h e i n v a r i a n t ! L e t ' s t r y i n s e r t i n g 1 8 .

7 1 1 1 5 1 7 1 9 1 9 1 3 5 2 4 3

slide-15
SLIDE 15

I n s e r t i

  • n

i n t

  • a

2

  • 3

t r e e

F i r s t a d d a n d a b s

  • r

b . W e g

  • t

a 4

  • n
  • d

e , s p l i t i t .

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

slide-16
SLIDE 16

I n s e r t i

  • n

i n t

  • a

2

  • 3

t r e e

A b s

  • r

b t h e e x t r a n

  • d

e i n t

  • t

h e p a r e n t .

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

slide-17
SLIDE 17

I n s e r t i

  • n

i n t

  • a

2

  • 3

t r e e

W e g

  • t

a 4

  • n
  • d

e a g a i n , s

  • s

p l i t a n d a b s

  • r

b .

7 1 9 1 3 5 2 4 3 1 7 1 1 1 5 1 8 1 9 1 5 w i l l b e a b s

  • r

b e d

slide-18
SLIDE 18

I n s e r t i

  • n

i n t

  • a

2

  • 3

t r e e

D

  • n

e ! ( I f w e i n s e r t e v e n m

  • r

e , e v e n t u a l l y t h e r

  • t

w i l l s p l i t , w h i c h a d d s a n e w l e v e l t

  • t

h e t r e e . )

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

slide-19
SLIDE 19

2

  • 3

i n s e r t i

  • n

a l g

  • r

i t h m

I n s e r t t h e n e w n

  • d

e i n t

  • t

h e t r e e Tie n a l t e r n a t e 2 s t e p s :

  • a

b s

  • r

b t h e n

  • d

e i n t

  • i

t s p a r e n t , m

  • v

e u p t

  • t

h e p a r e n t

  • i

f t h e n

  • d

e i s a 4

  • n
  • d

e , s p l i t i t i n t

  • 2
  • n
  • d

e s

S t

  • p
  • n

c e y

  • u

d

  • n

' t n e e d t

  • s

p l i t

slide-20
SLIDE 20

2

  • 3

t r e e s , s u m m a r y

2

  • 3

t r e e s d

  • n
  • t

u s e r

  • t

a t i

  • n

, u n l i k e b a l a n c e d B S T s – i n s t e a d , t h e y k e e p t h e t r e e p e r f e c t l y b a l a n c e d

  • I

n v a r i a n t m a i n t a i n e d u s i n g a b s

  • r

p t i

  • n

( t

  • r

e m

  • v

e u n w a n t e d n

  • d

e s ) a n d s p l i t t i n g ( t

  • e

l i m i n a t e 4

  • n
  • d

e s )

C

  • m

p l e x i t y i s O ( l

  • g

n ) , a s t r e e i s p e r f e c t l y b a l a n c e d C

  • n

c e p t u a l l y m u c h s i m p l e r t h a n A V L t r e e s ! B u t i m p l e m e n t a t i

  • n

i s r e a l l y a n n

  • y

i n g : (

  • S

e e T w

  • Tir

e e . h s

slide-21
SLIDE 21

A A t r e e s

slide-22
SLIDE 22

A A t r e e s

A A t r e e s i m p l e m e n t a 2

  • 3

t r e e u s i n g a B S T ! A 2

  • n
  • d

e b e c

  • m

e s a B S T n

  • d

e A 3

  • n
  • d

e b e c

  • m

e s t w

  • B

S T n

  • d

e s : W e ' l l a l w a y s t r a n s l a t e a 3

  • n
  • d

e i n t

  • a

n

  • d

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

x y C A B x y A B C

slide-23
SLIDE 23

A A t r e e s , t h e p l a n

A n A A t r e e i s r e a l l y a 2

  • 3

t r e e , b u t w e s t

  • r

e i t i n a b i n a r y s e a r c h t r e e

  • A

b i t l i k e w h a t w e d i d f

  • r

b i n a r y h e a p s

W e ' l l n e e d t

  • a

d d e x t r a i n f

  • r

m a t i

  • n

t

  • t

h e n

  • d

e s , a n d i n v a r i a n t s , s

  • t

h a t :

  • A

n y A A t r e e m u s t c

  • r

r e s p

  • n

d t

  • a

2

  • 3

t r e e

  • W

e c a n t e l l w h e t h e r e a c h n

  • d

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

  • n
  • d

e ,

  • r

p a r t

  • f

a 3

  • n
  • d

e

Tie n w e c a n a d a p t 2

  • 3

i n s e r t i

  • n

t

  • A

A t r e e s !

  • F
  • r

s e a r c h i n g , w e c a n j u s t u s e B S T s e a r c h

slide-24
SLIDE 24

A A t r e e s

W e s t

  • r

e w i t h e a c h n

  • d

e a l e v e l , w h i c h i s t h e h e i g h t

  • f

t h e c

  • r

r e s p

  • n

d i n g 2

  • 3

t r e e n

  • d

e N

  • t

i c e t h a t x a n d y h a v e t h e s a m e l e v e l . Tia t ' s h

  • w

w e c a n t e l l t h e y r e p r e s e n t a 3

  • n
  • d

e . O u r i n v a r i a n t w i l l t a l k a b

  • u

t l e v e l s .

x y C A B x y A B C k + 1 k k k k + 1 k + 1 k k k

slide-25
SLIDE 25

A A t r e e s

I f a n

  • d

e h a s t h e s a m e l e v e l a s i t s p a r e n t , w e ' l l d r a w t h e m n e x t t

  • e

a c h

  • t

h e r . Tii s e m p h a s i s e s t h e l e v e l s i n t h e t r e e .

x y C A B x y A B C k + 1 k k k k + 1 k + 1 k k k

slide-26
SLIDE 26

2

  • 3

t r e e s a s A A t r e e s

H e r e w a s t h e 2

  • 3

t r e e f r

  • m

b e f

  • r

e . . .

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

slide-27
SLIDE 27

2

  • 3

t r e e s a s A A t r e e s

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

  • r

r e s p

  • n

d i n g A A t r e e ! W e c a n i d e n t i f y t h e 2

  • a

n d 3

  • n
  • d

e s b y l

  • k

i n g a t t h e l e v e l

  • f

t h e n

  • d

e s ( h

  • w

? )

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

slide-28
SLIDE 28

A A t r e e s

W e c a n t r a n s l a t e a 2

  • 3

t r e e t

  • a

n A A t r e e A n d , b y l

  • k

i n g a t t h e l e v e l s , w e c a n g

  • t

h e

  • t

h e r w a y

  • I

f a n

  • d

e h a s t h e s a m e l e v e l a s i t s r i g h t c h i l d , t h e t w

  • n
  • d

e s t

  • g

e t h e r m a k e a 3

  • n
  • d

e

  • O

t h e r w i s e i t ' s a 2

  • n
  • d

e

N

  • w

w e n e e d a n i n v a r i a n t t

  • c

h e c k t h a t :

  • W

e

  • n

l y h a v e 2

  • n
  • d

e s a n d 3

  • n
  • d

e s

  • Tie

l e v e l s m a t c h t h e h e i g h t s i n t h e 2

  • 3

t r e e

  • Tie

2

  • 3

t r e e i s p e r f e c t l y b a l a n c e d

slide-29
SLIDE 29

A A t r e e i n v a r i a n t , a fj r s t a t t e m p t

A n A A t r e e

  • n

l y c

  • n

t a i n s s u b t r e e s

  • f

t h e f

  • l

l

  • w

i n g s h a p e : N

  • t

i c e t h a t t h e l e v e l

  • f

x / y m u s t b e e x a c t l y

  • n

e m

  • r

e t h a n t h e l e v e l

  • f

A / B / C ( w e c

  • n

s i d e r n u l l t

  • h

a v e a l e v e l

  • f

– t h i s m e a n s a l e a f m u s t h a v e a l e v e l

  • f

1 )

x y A B C k k k k + 1 k + 1 x A B k k k + 1

slide-30
SLIDE 30

A A t r e e i n v a r i a n t , p a r t 1

I t t u r n s

  • u

t t

  • b

e b e t t e r t

  • b

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

  • p

i e c e s , s

  • t

h a t i t s a y s s

  • m

e t h i n g a b

  • u

t e a c h B S T n

  • d

e F i r s t , t h e l e v e l

  • f

a c h i l d n

  • d

e i n t h e B S T m u s t b e e i t h e r :

  • e

q u a l t

  • t

h e l e v e l

  • f

i t s p a r e n t ,

  • r
  • o

n e l e s s t h a n t h e l e v e l

  • f

i t s p a r e n t

( w h e r e t h e l e v e l

  • f

n u l l i s )

slide-31
SLIDE 31

A A t r e e i n v a r i a n t , p a r t 2

I f a n

  • d

e h a s t h e s a m e l e v e l a s i t s c h i l d , i t m u s t b e t h e r

  • t
  • f

a 3

  • n
  • d

e . S

  • w

e c a n s a y :

  • A

n

  • d

e ' s l e v e l m u s t b e g r e a t e r t h a n i t s l e f t c h i l d : l e v e l ( n

  • d

e ) > l e v e l ( n

  • d

e . l e f t )

  • A

n d a l s

  • g

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

  • r

i g h t g r a n c h i l d : l e v e l ( n

  • d

e ) > l e v e l ( n

  • d

e . r i g h t . r i g h t )

x y A B C

slide-32
SLIDE 32

A A t r e e – n

  • t

a l l

  • w

e d

x y A B C x y A B C z D

B a d : m a l f

  • r

m e d 3

  • n
  • d

e ( l e f t c h i l d a t s a m e h e i g h t ) B a d : 4

  • n
  • d

e ( r i g h t g r a n d c h i l d a t s a m e h e i g h t ) W e ' l l g e t t h e s e t r e e s d u r i n g i n s e r t i

  • n

!

slide-33
SLIDE 33

A A t r e e i n v a r i a n t , s u m m a r y

W e c

  • n

s i d e r t h e l e v e l

  • f

n u l l t

  • b

e F

  • r

e a c h n

  • d

e i n t h e t r e e , t h e f

  • l

l

  • w

i n g m u s t h

  • l

d :

  • Tie

n

  • d

e ' s c h i l d r e n m u s t h a v e a l e v e l e i t h e r e q u a l t

  • r
  • n

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

  • d

e i t s e l f

  • l

e v e l ( n

  • d

e ) > l e v e l ( n

  • d

e . l e f t ) ( x y n

  • t

a l l

  • w

e d ) ←

  • l

e v e l ( n

  • d

e ) > l e v e l ( n

  • d

e . r i g h t . r i g h t ) ( x y z n

  • t

a l l

  • w

e d ) → →

Tii s i m p l i e s t h a t a n y l e a f n

  • d

e h a s a l e v e l

  • f

1 W e a l s

  • h

a v e t h e n

  • r

m a l B S T i n v a r i a n t !

slide-34
SLIDE 34

W h y i s t h i s n

  • t

a n A A t r e e ?

7 1 5 2 4 1 3 5 1 1 9 1 7 1 9 1 8 1 1 1 1 1 1 2 2 2 2 3 3 1 1 ' s r i g h t c h i l d ( n u l l ) h a s l e v e l , s h

  • u

l d b e 1

  • r

2

slide-35
SLIDE 35

W h y i s t h i s n

  • t

a n A A t r e e ?

7 1 5 2 4 1 3 5 1 1 9 1 3 1 7 1 9 1 8 1 1 1 1 1 1 1 2 2 2 2 3 3 7 i s l e f t c h i l d

  • f

1 5 , h a s s a m e l e v e l

slide-36
SLIDE 36

W h y i s t h i s n

  • t

a n A A t r e e ?

7 1 5 2 4 1 3 5 1 1 9 1 3 1 7 1 9 1 8 1 1 1 1 1 1 1 2 2 2 2 4 4 C h i l d r e n

  • f

7 a n d 1 5 h a v e t

  • s

m a l l l e v e l

slide-37
SLIDE 37

W h y i s t h i s n

  • t

a n A A t r e e ?

7 1 5 2 4 1 3 5 1 1 9 1 3 1 7 1 9 1 8 1 1 1 1 2 2 L e a f n

  • d

e s h a v e l e f t c h i l d n u l l ( h e i g h t ) , s

  • t

h e i r h e i g h t s h

  • u

l d b e 1

slide-38
SLIDE 38

A A t r e e i n s e r t i

  • n

T

  • i

n s e r t i n t

  • a

n A A t r e e , w e s t a r t w i t h a n

  • r

m a l B S T i n s e r t i

  • n

. Tie n e w n

  • d

e i s a l e a f s

  • w

e g i v e i t a l e v e l

  • f

1 . N

  • t

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

  • h

a s l e v e l 1 ( w h y ? ) I f w e a r e l u c k y t h e p a r e n t w a s a 2

  • n
  • d

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

  • t

h e r i g h t

  • f

i t , g i v i n g a 3

  • n
  • d

e : O t h e r w i s e , t h e i n v a r i a n t i s b r

  • k

e n . B u t t h e r e a r e

  • n

l y t w

  • w

a y s i t c a n b r e a k !

x y x

slide-39
SLIDE 39

C a s e 1 : s k e w

x y A B C x y A B C

H e r e , w e h a v e i n s e r t e d i n t

  • t

h e l e f t

  • f

a 2

  • n
  • d

e , b r e a k i n g t h e i n v a r i a n t . W e c a n fj x i t b y d

  • i

n g a r i g h t r

  • t

a t i

  • n

! Tii s

  • p

e r a t i

  • n

i s c a l l e d s k e w . W e d

  • i

t w h e n e v e r t h e n e w n

  • d

e i s t h e l e f t c h i l d

  • f

i t s p a r e n t .

k k k k k k k + 1 k + 1 k + 1 k + 1

slide-40
SLIDE 40

C a s e 2 : s p l i t

x y A B C z D

H e r e , i n s e r t i

  • n

c r e a t e d a 4

  • n
  • d

e . W e c a n s p l i t i t i n t

  • 2
  • n
  • d

e s ! N

  • t

i c e t h a t y ' s l e v e l i n c r e a s e s – m a y b r e a k t h e i n v a r i a n t

  • n

e l e v e l u p . S

  • c
  • n

t i n u e u p r e c u r s i v e l y !

x y A B C z D k k k k k k k k k + 1 k + 1 k + 1 k + 1 k + 1 k + 2

slide-41
SLIDE 41

A l l

  • t

h e r c a s e s : s k e w a n d s p l i t

I n s e r t i

  • n

c a n a l s

  • c

r e a t e a 4

  • n
  • d

e l i k e t h i s : B u t , i f w e d

  • a

s k e w , t h i s t u r n s i n t

  • t

h e p r e v i

  • u

s k i n d

  • f

4

  • n
  • d

e ! T

  • c
  • v

e r a l l t h e c a s e s w e j u s t h a v e t

  • :

fj r s t s k e w i f t h e l e f t c h i l d i s b a d , t h e n s p l i t i f t h e r i g h t g r a n d c h i l d i s b a d

x y A B C z D

slide-42
SLIDE 42

E x a m p l e : t h e q u i c k b r

  • w

n f

  • x

. . .

I n s e r t “ q u i c k ” i n t

t h e ”

t h e q u i c k 1 1 L e f t c h i l d a t s a m e l e v e l ! S k e w t

  • fj

x i t ( r

  • t

a t e r i g h t ) t h e q u i c k 1 1

slide-43
SLIDE 43

E x a m p l e : t h e q u i c k b r

  • w

n f

  • x

. . .

I n s e r t “ b r

  • w

n ”

t h e q u i c k 1 1 b r

  • w

n 1 t h e q u i c k 1 1 b r

  • w

n 1 s k e w s p l i t A f t e r s k e w i n g , w e g e t a 4

  • n
  • d

e ! S p l i t i t t h e q u i c k 2 1 b r

  • w

n 1

slide-44
SLIDE 44

E x a m p l e : t h e q u i c k b r

  • w

n f

  • x

. . .

I n s e r t “ f

  • x

t h e q u i c k 2 1 b r

  • w

n 1 f

  • x 1
slide-45
SLIDE 45

I n s e r t “ j u m p s ”

t h e q u i c k 2 1 b r

  • w

n 1 f

  • x 1j

u m p s 1 t h e q u i c k 2 1 b r

  • w

n 1 f

  • x

2 j u m p s 1 s p l i t “ b r

  • w

n ” S p l i t m

  • v

e s “ f

  • x

” u p

slide-46
SLIDE 46

E x a m p l e : t h e q u i c k b r

  • w

n f

  • x

. . .

I n s e r t “ j u m p s ”

t h e q u i c k 2 1 b r

  • w

n 1 f

  • x

2 j u m p s 1 s k e w t h e q u i c k 2 1 b r

  • w

n 1 f

  • x

2 j u m p s 1

slide-47
SLIDE 47

A A t r e e s – l

  • k

i n g b a c k

Tie r e a r e

  • n

l y t w

  • w

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

  • n

c a n b r e a k t h e i n v a r i a n t

  • Ma

k i n g a l e f t c h i l d w i t h t h e s a m e h e i g h t a s i t s p a r e n t – s k e w i t

  • Ma

k i n g a 4

  • n
  • d

e – s p l i t i t

Wh y s k e w t h e n s p l i t ? B e c a u s e s k e w i n g e n s u r e s t h e r e ' s

  • n

l y

  • n

e p

  • s

s i b l e w a y t

  • r

e p r e s e n t a 4

  • n
  • d

e Wh e n w e s p l i t , t h e l e v e l

  • f

t h e t

  • p

n

  • d

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

  • r

r e s p

  • n

d s t

  • a

b s

  • r

p t i

  • n

i n a 2

  • 3

t r e e

slide-48
SLIDE 48

A A t r e e s – i m p l e m e n t a t i

  • n

Tie l e v e l i s s t

  • r

e d a s p a r t

  • f

e a c h n

  • d

e . L

  • k

i n g a t t h e d i a g r a m s , t h e l e v e l c h a n g e s w h e n y

  • u

d

  • a

s p l i t – s

  • m

a k e s u r e t

  • d
  • t

h i s E a s i e s t w a y t

  • i

m p l e m e n t i t : h a v e s e p a r a t e f u n c t i

  • n

s f

  • r

s k e w a n d s p l i t , c a l l t h e m f r

  • m

i n s e r t . B u t fj r s t s k e w t h e n s p l i t , t

  • t

a k e c a r e

  • f

t h i s c a s e :

x y A B C z D

slide-49
SLIDE 49

A A v e r s u s A V L t r e e s

A A t r e e s h a v e a w e a k e r i n v a r i a n t t h a n A V L t r e e s ( l e s s b a l a n c e d ) – b u t s t i l l O ( l

  • g

n ) r u n n i n g t i m e A d v a n t a g e : l e s s w

  • r

k t

  • m

a i n t a i n t h e i n v a r i a n t ( t

  • p
  • d
  • w

n i n s e r t i

  • n

– n

  • n

e e d t

  • g
  • u

p t r e e a f t e r w a r d s ) , s

  • i

n s e r t i

  • n

a n d d e l e t i

  • n

a r e c h e a p e r D i s a d v a n t a g e : l

  • k

u p w i l l b e s l

  • w

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

  • B

u t n

  • d

i fg e r e n c e i n p r a c t i c e

slide-50
SLIDE 50

B

  • t

r e e s

B

  • t

r e e s g e n e r a l i s e 2

  • 3

t r e e s :

  • I

n a B

  • t

r e e

  • f
  • r

d e r k , a n

  • d

e c a n h a v e k c h i l d r e n

  • E

a c h n

  • n
  • r
  • t

n

  • d

e m u s t b e a t l e a s t h a l f

  • f

u l l

  • A

2

  • 3

t r e e i s a B

  • t

r e e

  • f
  • r

d e r 3

I n s e r t i

  • n

a l s

  • b

a s e d

  • n

s p l i t t i n g !

10 10 22 22 30 30 40 40 13 13 15 15 18 18 20 20 32 32 35 35 38 38 5 5 7 7 8 8 26 26 27 27 42 42 46 46

slide-51
SLIDE 51

W h y B

  • t

r e e s

B

  • t

r e e s a r e u s e d f

  • r

d i s k s t

  • r

a g e i n d a t a b a s e s :

  • H

a r d d r i v e s r e a d d a t a i n b l

  • c

k s

  • f

t y p i c a l l y ~ 4 K B

  • F
  • r

g

  • d

p e r f

  • r

m a n c e , y

  • u

w a n t t

  • m

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

  • f

b l

  • c

k s r e a d

  • Tii

s m e a n s y

  • u

w a n t : 1 t r e e n

  • d

e = 1 b l

  • c

k

  • B
  • t

r e e s w i t h k a b

  • u

t 1 2 4 a c h i e v e t h i s

10 10 22 22 30 30 40 40 13 13 15 15 18 18 20 20 32 32 35 35 38 38 5 5 7 7 8 8 26 26 27 27 42 42 46 46

slide-52
SLIDE 52

R e d

  • b

l a c k t r e e s ( n

  • t
  • n

e x a m )

I n s t e a d

  • f

2

  • 3

t r e e s , w e c a n u s e 2

  • 3
  • 4

t r e e s

  • 2
  • n
  • d

e , 3

  • n
  • d

e s a n d 4

  • n
  • d

e s (

  • r

B

  • t

r e e w i t h k = 4 )

Tie r e ' s a m

  • r

e e ffjc i e n t i n s e r t i

  • n

a l g

  • r

i t h m f

  • r

t h e m , c a l l e d t

  • p
  • d
  • w

n i n s e r t i

  • n

!

  • S

e e Wi k i p e d i a p a g e f

  • r

m

  • r

e i n f

  • r

m a t i

  • n

W e c a n i m p l e m e n t t h e m u s i n g B S T s , u s i n g t h e s a m e i d e a s a s A A t r e e s . Tii s i s c a l l e d a r e d

  • b

l a c k t r e e , t h e f a s t e s t b a l a n c e d B S T

  • G

e t s c

  • m

p l i c a t e d b e c a u s e

  • f

l

  • t

s

  • f

c a s e s

slide-53
SLIDE 53

S u m m a r y

2

  • 3

t r e e s : a l l

  • w

2

  • r

3 c h i l d r e n p e r n

  • d

e

  • P
  • s

s i b l e t

  • k

e e p p e r f e c t l y b a l a n c e d

  • S

l i g h t l y a n n

  • y

i n g t

  • i

m p l e m e n t

A A t r e e s – 2

  • 3

t r e e s i m p l e m e n t e d u s i n g a B S T

  • S

i m i l a r p e r f

  • r

m a n c e t

  • A

V L t r e e s , b u t m u c h s i m p l e r

  • F

e w e r c a s e s t

  • c
  • n

s i d e r , b e c a u s e t h e i n v a r i a n t c a n

  • n

l y b r e a k i n t w

  • w

a y s

B

  • t

r e e s : g e n e r a l i s e 2

  • 3

t r e e s t

  • k

c h i l d r e n

  • I

f k i s b i g , t h e h e i g h t i s v e r y s m a l l – u s e f u l f

  • r
  • n
  • d

i s k t r e e s e . g . d a t a b a s e s