141
7/23/2019 CTDL-03-Tree.pptx http://slidepdf.com/reader/full/ctdl-03-treepptx 1/141 C u tr c dữ li u v giải thu t CẤU TRÚC CÂY Giảng viên: Đậu Ngọc Hà Dương

CTDL-03-Tree.pptx

Embed Size (px)

Citation preview

Page 1: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 1/141

C u tr c dữ li u v giải thu t

CẤU TRÚC CÂY

Giảng viên: 

Đậu Ngọc Hà Dương

Page 2: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 2/141

Nội dung trình bày

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

2

Khái niệm

Phép duyệt cây và Biểu diễn cây

Cây nhị phân và Cây nhị phân tìm kiếm

Cây AVL

Cây AA

Page 3: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 3/141

Khái niệm

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

3

Page 4: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 4/141

Một số thuật ngữ

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

4

Tree Search tree Binary search tree Balanced tree  AVL tree  AA tree Red-Black tree …

Page 5: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 5/141

Cây tổng qut

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

5

a

 

d

i !

" p

#

$ % 

c

&

' m

h

n

Page 6: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 6/141

Cây tổng qut

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

6

Sơ đồ tổ chức Cây thư !c

Page 7: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 7/141

 !"nh ngh#$

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

7

Cây "cây c# $%c& đư'c ()c đ*nh đ+ ,y nhưsa.() *+p h,p &-m ( đỉnh 'à m.t cây) Cây này c/ gốc 'à

01nh duy nh2t c3a n/)4) 56i *(7 *47 8 *k  9k : (; 'à các cây kh<n& c=t nhau c/

&>c t?@n& n&  (7  47 8  k )

5i DE r  'à m.t 01nh mFi kh<n& thu.c các cây *i) Khi 0/7t+p h,p * &-m 01nh r  và các cây *i tG" thành m.t câymFi vFi &>c r ) Các cây *(7 *47 8 *k  0?,c &6i 'à câyc"n c3a &>c )

Page 8: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 8/141

 !"nh ngh#$

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

8

r %

T%

r &

T&

r '

T'

/0t $%c

Cây c1n

Page 9: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 9/141

C( 'hi ni)*

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

9

n1de. đ2nh r11t. $%c cây lea3. l) inner n1de4internal n1de. đ2nh tr1n$ 5arent. đ2nh cha child. đ2nh c1n 5ath. đư6n$ đi

Page 10: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 10/141

C( 'hi ni)*

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

10

r %

T%

r &

T&

r '

T'

/0t $%c

Cây c1n/0t l)

r '

'% '&

'+','-

'.

 7ư6n$ đi

Page 11: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 11/141

C( 'hi ni)*

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

11

de$ree41rder. 89c  B+c c3a n"d$H I> c"n c3a n"d$  B+c c3a câyH +c 'Fn nh2t t"n& D> các c"n

de5th4le:el. đ; sâ4ức  Jc 90. Dâu;c3a n"d$H Chiu dài c3a 0?n& 0i tM n"d$

&>c 0ến n"d$ 0/ c.n& thNm () hei$ht. chi< ca1

  Chiu ca" câyH Cây r=n$. > Cây kh)c r=n$. ?ức l@n nht $ia c)c n1de ca cây

Page 12: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 12/141

C( 'hi ni)*

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

12

r %

T%

r &

T&

r '

T'

/0t $%c

Cây c1n/0t l)

 7; ca1 D E

B9c D k

r '

'% '&

'+','-

'.

B9c D F

 7ư6n$ đi

Page 13: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 13/141

Phép duyệt cây

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

13

Page 14: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 14/141

/h01 duy)t (ây

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

14

 7G 8G1 đHn =i n1de trIn cây (h2nh 3( *ột 45n ;t c)ch(6 h) thốngJ

/hi< tha1 t)c (K l trIn cây cMn 5hGi sK d!n$ đHn 5hN5 dy+t

câyJ

C)c 5hN5 cơ 8Gn.  Ouyệt t?Fc 9P$"d$;

  Ouyệt &iQa 9Rn"d$;

  Ouyệt Dau 9P"Dt"d$;

Page 15: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 15/141

/h01 duy)t (ây

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

15

$

b (

hgd

i

7 8 

Oarent"8& D a

Oarent"a&P

Qldest-Child"c& D $

/e(tSi8lin$"$& D h

/e(tSi8lin$"h&P

Page 16: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 16/141

/h01 duy)t (ây

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

16

y+t the1 chi< sâ

$

b (

h8 

i 9

7 g

'

Page 17: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 17/141

/h01 duy)t (ây

void  Preorder( NODE A)

{

 NODE B;

Visit(A);

B = EldestChild (A);

 while (B != ∅) {

Preorder(B);

B = NextSibling (B);

}

}

void Postorder( NODE A)

{

 NODE B;

B = EldestChild (A);

 while (B != ) {

Postorder(B);

B = NextSibling (B);

}

Visit(A);

}

17

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

/r7:;rd7r  Post-ordr

Page 18: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 18/141

/h01 duy)t (ây

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

18

<n:=rd7r void  Inorder( NODE A)

{

 NODE B;

B = EldestChild (A);

if (B != ∅) {

Inorder(B);

B = NextSibling (B);

}

Visit(A);

 while (B != ∅) {Inorder(B);

B = NextSibling (B);

}

}

Page 19: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 19/141

!i"u di#n cây

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

19

Page 20: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 20/141

>?ng d$nh s(h (ây (;n

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

20

$

b (

h8 d

i 9

7 g

'

in8; (hi4d

a

F 8

c

E d

U e

W $

X h

Y i

> Z

id ne(t

F

E

Y

U

W

(S

X

Page 21: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 21/141

>?ng d$nh s(h (ây (;n

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

21

@

> C

A B

< D E

F G

R11t

Page 22: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 22/141

>?ng HInh tri nhJt Kà HInh 'L 1hi

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

22

<n8; B4d7st Chi4d N73t ib4ing

a F >

F 8 E

c >E d > U

U e Y >

3 > W

W $ X

X h > >

Y i > >

> Z > >

k > >

$

b (

h8 d

i 9

7 g

'

Page 23: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 23/141

>?ng HInh tri nhJt Kà HInh 'L 1hi

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

23

@

> C

A B

< D E

F G

R11t

Page 24: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 24/141

>?ng (h$ *Oi HInh

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

24

<n8; /$r7nt

a >

F 8

c

E d F

U e F

3

W $

X h Y i U

> Z U

k W

$

b (

h8 d

i 9

7 g

'

Page 25: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 25/141

Binary tree

Cây nh$ phân

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

25

Page 26: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 26/141

Cây nh" 1hân

L[ cây [ =i đ2nhc# 89c t%i đa 8\n$ FJ

C)c cây c1n đư'c

$]i l[ cây c1n tr)i :[cây c1n 5hGiJ

C# t1[n 8; c)c tha1t)c cơ 8Gn ca câyJ

26

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

$

b (

8 d

h i

7 g

 9

struct NODE{

Data key;

 NODE *pLeft;

 NODE *pRit;

};

Page 27: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 27/141

Một số Png dQng

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

27

Cây tổ chức thi đ Cây 8i^ thức s% h]c Lư tr :[ t_ kiH

th`n$ tinJ

S

%,

- ,

: sin

-

Cây biểu thức:4 * (3 – 4) + (1 + sin(30))

Page 28: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 28/141

Cây nh" 1hân tì* 'i*

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

28

Cây nh* 5hân t_ kiH l[ cây nh* 5hân tha bnc)c đi< ki+n sa.

J h#a ca c)c đ2nh th;c cây c1n tr)i nh hơn

kh#a $%cJFJ h#a ca $%c nh hơn kh#a c)c đ2nh th;c

cây c1n 5hGiJ

J Cây c1n tr)i :[ cây c1n 5hGi ca $%c cn$ l[cây nh* 5hân t_ kiHJ

Page 29: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 29/141

Cây nh" 1hân tì* 'i*

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

29

T

U (S

4

W X

Y 4Z

4S

Page 30: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 30/141

Cây nh" 1hân tì* 'i*

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

30

 7c đi^.  C/ th t[  Kh<n& c/ ph\n tE t]n&

  Oễ dàn& tG" dQ 'iệu D=p ^ếp7 và tìm kiếm

Page 31: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 31/141

%h&o tác tr'ncây nh$ phân t(m )i*m

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

Page 32: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 32/141

C( th$; t(

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

ThI 5hMn tK "kh#a&

T_ kiH 5hMn tK "kh#a&

f#a 5hMn tK "kh#a&

Sg5 (H5

y+t cây

ay cây

32

Page 33: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 33/141

ThV* 1h5n tW

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

33

Bư@c . Bgt đM t $%c

Bư@c F. S1 s)nh d li+ "kh#a& cMn thI :@i

d li+ "kh#a& ca n1de hi+n h[nhJ   _ếu `n& nhau b t-n tGi) Kết thec   _ếu nhf h@n b i #ua nhánh tái7 *iếp ?Fc 4)   _ếu 'Fn h@n b i #ua nhánh phi7 *iếp ?Fc 4)

Bư@c . h`n$ th^ đi tiH5 na Dj T1 n1de @i:@i d li+ "kh#a& cMn thIJ Ht th0c

Page 34: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 34/141

Tì* 'i* 1h5n tW

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

34

Bư@c . Bgt đM t $%c

Bư@c F. S1 s)nh d li+ "kh#a& cMn t_ :@i d

li+ "kh#a& ca n1de hi+n h[nhJ   _ếu `n& nhau b *ìm th2y) Kết thec   _ếu nhf h@n b i #ua nhánh tái7 *iếp ?Fc 4)   _ếu 'Fn h@n b i #ua nhánh phi7 *iếp ?Fc 4)

Bư@c . h`n$ th^ đi tiH5 na Dj h`n$ t_thyJ Ht th0cJ

Page 35: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 35/141

X6$ 1h5n tW

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

35

T_ đHn n1de chứa d li+ "kh#a& cMn (#aJ

fNt c)c trư6n$ h'5.   _"d$ 'á   _"d$ ch1 c/ ( c"n   _"d$ c/ 4 c"nH d]n& ph\n tE thế mGn& 0ể ^/a thế)

Page 36: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 36/141

1 3136

Ch1 cây nh* 5hân t_ kiH

Thứ t dy+t c)c n1de

nH sK d!n$ y+t $iaP

/I nh9n (Nt

  Có thể dễ dàng tạo dữ liệ !"# $%#n% d&ng #h'# d(ệt giữ)

%+

Z %[

%.%

%,

%-

[

%Z

Z %[% [ %- %, %+ %. %Z

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

Page 37: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 37/141

/h01 duy)t (ây

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

37

y+t trư@c

4

2

1 3 25

20

23

4

2

1 3

20

25

23

Page 38: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 38/141

/h01 duy)t (ây

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

38

y+t $ia

4

2

1 3 25

20

23

1

2

3

4

20

23

25

Page 39: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 39/141

/h01 duy)t (ây

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

39

y+t sa

4

2

1 3 25

20

23

1 3

2

23

25

20

4

Page 40: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 40/141

/h01 qu$y tri

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

40

$

bT%

T& T-

/

$

b

T% T&

T-

/\u$y tri (ây /

Page 41: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 41/141

/h01 qu$y tri

%Z

Z -+

&

%Z

-+

Z &

+

++

++

+

/

\u$y tri (ây /

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

41

Page 42: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 42/141

/h01 qu$y 1hi

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

42

b

T%

T-

/

$

T&

$

T&

T%

/

b

T-

\u$y 1hi (ây /

Page 43: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 43/141

/h01 qu$y 1hi

+

++,

-] ,+

-.

,

+-]

++-. ,+

\u$y 1hi (ây //

.+

.+

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

43

Page 44: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 44/141

Th^i gi$n th_( hi)n (( 1h01 t;n

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

44

 7%i :@i 5hN5 t_ kiH.  *?n& h,p t>t nh2tH mgi net 9tM net 'á; 0u c/ 4 c"nH

*+log2n, 9chnh 'à chiu ca" c3a cây;)

  *?n& h,p ^2u nh2tH cây t thành danh Dách 'iNn kếtH*+n,)

  *?n& h,p tun& ình 'à a" nhiNuj

*+log2n,

Page 45: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 45/141

`2 dQ

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

45

T1 cây nh* 5hân t_ kiH the1 thứ t nh95như sa. m Xm Ym Fm Em Um m Xm Y

Page 46: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 46/141

`2 dQ

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

46

T1 cây nh* 5hân t_ kiH the1 thứ t nh95như sa. m Xm Ym Fm Em Um m Xm Y

Z

%[

%

[

%&

%,

%+

%.

%Z

Page 47: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 47/141

 AVL tree

Cây +,

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

47

Page 48: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 48/141

Fiai thi)u

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

48

1 J?J @delsen `elskii :[ QJ?J endis đưa ra:[1 no YFm đt tIn l[ cây AVLJ

Page 49: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 49/141

 !"nh ngh#$

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

49

Cây cân 8\n$ AVL l[ cây nh* 5hân t_ kiH [ti =i đ2nh ca câym đ; ca1 ca cây c1n tr)i :[cây c1n 5hGi 'hcng (hVnh 4)(h qu %J

Page 50: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 50/141

Cây @`

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

50

Vp d! .%&

Z

+ %%

%Z

%]

, ]

&

%&

Z

+ %%

%Z

%]

, ]

Cây @` Cây @`

Page 51: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 51/141

Xây d_ng (ây (ân b?ng

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

51

Vi+c (ây dn$ cây cân 8\n$ da trIn cây nh* 5hân t_kiHm ch2 8ổ sn$ thI $i) tr* ch1 8iHt s cân 8\n$ca c)c cây c1n như thH n[1J

C)ch l[ $'i .struct NODE {

Data key;

 NODE *pLeft" *pRit;

int #a$;

};

Tr1n$ đ# $i) tr* 8al "8alancem cân 8\n$& c# th^ l[. >. cân8\n$q . l+ch tr)iq F. l+ch 5hGi

Page 52: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 52/141

C( tre^ng hf1 *Jt (ân b?ng

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

52

?t cân 8\n$ tr)i-tr)i "L-L&

?t cân 8\n$ tr)i-5hGi "L-R&

?t cân 8\n$ 5hGi-5hGi "R-R&

?t cân 8\n$ 5hGi-tr)i "R-L&

Page 53: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 53/141

C( tre^ng hf1 *Jt (ân b?ng

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

53

?t cân 8\n$ tr)i-tr)i "L-L&

%&

Z

+

%Z

%]

,

Page 54: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 54/141

C( tre^ng hf1 *Jt (ân b?ng

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

54

?t cân 8\n$ tr)i-5hGi "L-R&

%&

Z

+

%Z

%]

]

Page 55: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 55/141

C( tre^ng hf1 *Jt (ân b?ng

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

55

?t cân 8\n$ 5hGi-5hGi "R-R&

%&

Z

+ %%

%Z

, ]

&&

&+

Page 56: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 56/141

C( tre^ng hf1 *Jt (ân b?ng

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

56

?t cân 8\n$ 5hGi-tr)i "R-L&

%&

Z

+ %%

%Z

, ]

&&

&

Page 57: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 57/141

XW 4 *Jt (ân b?ng

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

57

iG sK ti ;t n1de cây (Gy ra t cân 8\n$8In 5hGi "cây c1n 5hGi chInh l+ch :@i cây c1ntr)i hơn ;t đơn :*&. 

J2t cân `n& phiphi 9; ay tr)i

  J2t cân `n& phitái 9L; ay 5hGi ay tr)i

Page 58: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 58/141

XW 4 *Jt (ân b?ng

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

58

O t cân 8\n$ 5hGi-5hGi "RR&.

$

b

T%

T& T-

h

h%h

/

\

$

b

T% T&

T-

h

h%

h

/\u$y tri (ây /

Page 59: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 59/141

XW 4 *Jt (ân b?ng

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

59

O t cân 8\n$ 5hGi-5hGi "RR&.

Page 60: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 60/141

XW 4 *Jt (ân b?ng

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

60

O t cân 8\n$ 5hGi-5hGi "RR&.

%Z

Z -+

&

%Z

-+

Z &

+

++

++

+

/

\

\u$y tri (ây /

J ?

Page 61: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 61/141

XW 4 *Jt (ân b?ng

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

61

O t cân 8\n$ 5hGi-tr)i "RL&.  B?Fc (H #uay phi l  B?Fc 4H #uay tái cây P

$

bT%

T&

T,

h

h:%h

/

\

(

T-

h

J ?

Page 62: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 62/141

XW 4 *Jt (ân b?ng

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

62

O t cân 8\n$ 5hGi-tr)i "RL&.  B?Fc (H #uay phi cây l

$

bT%

T&

T,

h

h:%h

/

\

(

T-

h

$

(T%

T-

T&

h

hh: %

/

\

b

T,

h

\u$y 1hi (ây \

J ?

Page 63: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 63/141

XW 4 *Jt (ân b?ng

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

63

O t cân 8\n$ 5hGi-tr)i "RL&.  B?Fc 4H #uay tái cây P

$

(

T% T-T&

h hh: %

/

b

T,h

$

(T%

T-

T&

h

hh: %

/

\

b

T,

h

\u$y tri (ây /

J ?

Page 64: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 64/141

XW 4 *Jt (ân b?ng

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

64

O t cân 8\n$ 5hGi-tr)i "RL& Bư@c .\u$y 1hi (ây \

%Z

-+

Z &

,

+-]

++-. ,+

.+

%Z

-+

Z &

+

++,

-] ,+

-.

/

\

.+

J ?

Page 65: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 65/141

XW 4 *Jt (ân b?ng

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

65

O t cân 8\n$ 5hGi-tr)i "RL& - Bư@c F.

-+

,

+

++

.+Z &

-]

-.

%Z,+

\u$y tri (ây /

%Z

-+

Z &

,

+-]

++-. ,+

/

\

.+

J ?

Page 66: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 66/141

XW 4 *Jt (ân b?ng

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

66

hi ;t n1de cây (Gy ra t cân 8\n$ 8In tr)i"cây c1n tr)i chInh l+ch :@i cây c1n 5hGi hơn;t đơn :*&. "thc hi+n đ%i (ứn$ :@i trư6n$ h'5

t cân 8\n$ 8In 5hGi&  J2t cân `n& táitái 9LL; ay 5hGi

  J2t cân `n& táitái 9L; ay tr)i ay 5hGi

J ?

Page 67: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 67/141

XW 4 *Jt (ân b?ng

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

67

*h$" ikip$dia

Page 68: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 68/141

Th$; t( tì* 'i*

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

68

Thc hi+n h1[n t1[n tươn$ t cây nh* 5hân t_kiHJ T

U (S

4

W X

Y 4Z

4S

V 5 W

Page 69: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 69/141

Th$; t( thV* 1h5n tW

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

69

Thc hi+n tươn$ t :@i :i+c thI 5hMn tK cacây nh* 5hân t_ kiHJ

/H (Gy ra :i+c t cân 8\n$ th_ (K l 8\n$ c)ctrư6n$ h'5 t cân 8\n$ đb 8iHtJ

Th 6 h5 W

Page 70: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 70/141

Th$; t( 36$ 1h5n tW

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

70

Thc hi+n tươn$ t cây nh* 5hân t_ kiH. (Nt trư6n$ h'5m :[ t_ 5hMn tK thH n$ nH cMnJ

Sa khi (#am nH cây t cân 8\n$m thc hi+ncân 8\n$ câyJ

Lư . việc cân bằng sau khi hủy c thể !"y #a$ây chuy%nJ

Th t 6 h5 tW

Page 71: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 71/141

Th$; t( 36$ 1h5n tW

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

71

Vp d!. (#a U

-+

,

+

++

.+Z &

-]

-.

%Z ,+

-.

,

+

++

.+Z &

-]%Z ,+

/h5n tW th *ng 4à -.

Cây Kn (ân b?ng nVn'hcng 1hi hi)u (hInh

Th t 6 h5 tW

Page 72: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 72/141

Th$; t( 36$ 1h5n tW

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

72

f#a 5hMn tK EU

-.

,

+

++

.+Z &

-]%Z ,+

-.

,

+

++

Z &

-]%Z

N;d7 + b" 4)(h 1hi jjj

.+

Th t 6 h5 tW

Page 73: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 73/141

Th$; t( 36$ 1h5n tW

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

73

f#a 5hMn tK EU. cân 8\n$ li cây

-.

,

+

++

Z &

-]%Z

.+

\u$y tri ti n;d7 +

-.

,

++

.+

Z &

-]%Z +

Page 74: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 74/141

 AA tree

Cây ++

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

74

Gì h thà h

Page 75: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 75/141

Gình thành

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

75

 7ư'c đt tIn the1 t)c $iG @rne @nders1n "Th!y 7i^n&J

C`n$ tr_nh đư'c c`n$ 8% no YY "BalancedSearch Trees ?ade Si5le&J

C 'hi i)

Page 76: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 76/141

C( 'hi ni)*

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

76

?ức ca n1de

LiIn kHt n$an$

C 'hi i)

Page 77: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 77/141

C( 'hi ni)*

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

77

?ức ca n1de.  I> 'iNn kết t-.i tM n"d$ 0/ 0ến n"d$ _LL)

?ức ca /LL l[ >J

?ức ca n1de l) l[ J

W (S

(W

4S/c 1

/c 2

C 'hi i)

Page 78: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 78/141

C( 'hi ni)*

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

78

LiIn kHt n$an$.  LiNn kết &iQa n"d$ cha và n"d$ c"n c/ c]n& mc)

W (S

(W

4S

T2 h hJt

Page 79: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 79/141

T2nh (hJt

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

79

Cây AA l[ cây nh* 5hân t_ kiH tha bn c)c tpnh chtsa.o( Jc c3a n"d$ c"n tái =t u.c phi nhf h@n mc c3a n"d$ cha)

o4 Jc c3a n"d$ c"n Nn phi nhf h@n h"qc `n& mc c3a n"d$ cha)

LiNn kết n&an& =t u.c h?Fn& Dan& phi)oZ Jc c3a n"d$ cháu Nn phi =t u.c nhf h@n mc c3a n"d$ <n&)

Kh<n& t-n tGi 4 'iNn kết n&an& 'iNn tiếp)

oU J6i n"d$ c/ mc 'Fn h@n ( phi c/ 4 n"d$ c"n)

oW _ếu m.t n"d$ kh<n& c/ 'iNn kết n&an& phi thì c hai n"d$ c"nc3a n/ phi c]n& mc)

`2 dQ

Page 80: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 80/141

`2 dQ

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

80

ZS XS

TW

W

YS

TS

(S

S

(W

4S

WS

ZW US YWWW

/c c) c.c nod

`2 dQ

Page 81: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 81/141

`2 dQ

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

81

ZS XS

TW

W

YS

TS

(S

S

(W

4S

WS

ZW US YWWW

o !.nh c c) nod con t-.i i c c) nod ch) t-c ti%# c) nóC.c c# nod: 15 à 30; 5 à 15; 50 à 70; 35 à 50; 55 à 60; 80 à 85

`2 dQ

Page 82: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 82/141

`2 dQ

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

82

ZS XS

TW

W

YS

TS

(S

S

(W

4S

WS

ZW US YWWW

C.c li<n =%t ng)ng>?ng c) li<n =%t ng)ng

`2 dQ

Page 83: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 83/141

`2 dQ

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

83

ZS XS

TW

W

YS

TS

(S

S

(W

4S

WS

ZW US YWWW

Có t@n tại 2 li<n =%t ng)ng li<n ti%#

`2 dQ

Page 84: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 84/141

`2 dQ

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

84

ZS XS

TW

W

YS

TS

(S

S

(W

4S

WS

ZW US YWWW

/Ai nod có c ln hBn 1 đ có 2 nod con

`2 dQ

Page 85: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 85/141

`2 dQ

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

85

ZS XS

TW

W

YS

TS

(S

S

(W

4S

WS

ZW US YWWW

o !.nh c c) c.c nod con c) c.c nod: 15; 70; 60; 85

C( 1h01 bin Hổi (ây

Page 86: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 86/141

C( 1h01 bin Hổi (ây

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

86

Ske

S5lit

C( 1h01 bin Hổi (ây

Page 87: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 87/141

C( 1h01 bin Hổi (ây

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

87

Ske.  O]n& 0ể '"Gi f 'iNn kết n&an& tái)

P r

A B C

P r

AB C

C( 1h01 bin Hổi (ây

Page 88: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 88/141

C( 1h01 bin Hổi (ây

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

88

S5lit.  O]n& 0ể '"Gi f 4 'iNn kết n&an& 'iNn tiếp

r P

A B

5r

P

A B

5

C OC O

C( 1h01 bin Hổi (ây

Page 89: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 89/141

C( 1h01 bin Hổi (ây

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

89

Ske. dun$ đ^ l1i 8 liIn kHt n$an$ 8In tr)iJ

S5lit. dun$ đ^ l1i 8 F liIn kHt n$an$ "5hGi& liIn

tiH5J

BiHn đổi the1 thứ t Ske -j S5lit "nH c#&J

hi thc hi+n tha1 t)c S5litm n1de $ia đư'cton$ thI ;t ứcJ

C( th$; t( trVn (ây

Page 90: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 90/141

C( th$; t( trVn (ây

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

90

y+t câym T_ kiH.  *?@n& t[ cây nhị phân tìm kiếm

ThI 5hMn tK

f#a 5hMn tK

ThV* 1h5n tW

Page 91: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 91/141

ThV* 1h5n tW

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

91

Thc hi+n tươn$ t trIn cây nh* 5hân t_ kiHJ

OhMn tK đư'c thI :[1 l`n v ức J

Sa khi thIm thc hi+n c)c tha1 t)c Ske:[4h1c S5lit đ^ đG 8G1 tpnh cht ca câyJ

`2 dQ

Page 92: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 92/141

`2 dQ

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

92

Vs cây AA th$" th t[ nh+p Dau 0âyHU7 X7 Y7 Z7 W7 7 (W7 4X7 T7 US

`2 dQ

Page 93: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 93/141

`2 dQ

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

93

6

9

3

4

5 7

27

158 40

`2 dQ

Page 94: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 94/141

`2 dQ

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

94

wby :x cây AA the1 thứ t nh95 sa đây.  US7 T7 4X7 (W7 7 W7 Z7 Y7 X7 U

`2 dQ

Page 95: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 95/141

`2 dQ

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

95

9

275 7

3 4 6 8 15 40

X6$ 1h5n tW

Page 96: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 96/141

X6$ 1h5n tW

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

96

/H kh`n$ 5hGi l[ n1de l) "ức ca n1de l[ &mt_ 5hMn tK thH n$.  Ph\n tE 'Fn nh2t Nn nhánh tái 9n"d$ 'á;)

f#a n1de l).  5im mc c3a n"d$ cha nếu mc c3a n"d$ 'á nhf h@n)  *h[c hiện các tha" tác Ik$7 Ip'it c\n thiết

`2 dQ

Page 97: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 97/141

`2 dQ

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

97

f#a 5hMn tK X6

9

3

4

5 7

27

158 40

`2 dQ

Page 98: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 98/141

`2 dQ

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

98

f#a 5hMn tK X6

9

3

4

5 7

27

15 40

`2 dQ

Page 99: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 99/141

`2 dQ

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

99

f#a 5hMn tK U

6

9

3

4

5 7

27

158 40

`2 dQ

Page 100: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 100/141

`2 dQ

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

100

f#a 5hMn tK U

6

9

3

4

7

27

158 40

DiE c c) 4

`2 dQ

Page 101: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 101/141

`2 dQ

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

101

f#a 5hMn tK U

6

93 4

7

27

158 40

=F tại 4

`2 dQ

Page 102: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 102/141

`2 dQ

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

102

f#a 5hMn tK U

6

943

7

27

158 40

DiE c

`2 dQ

Page 103: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 103/141

`2 dQ

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

103

f#a 5hMn tK U

6 9

43 7

27

158 40

`2 dQ

Page 104: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 104/141

`2 dQ

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

104

f#a 5hMn tK U

6 9

43 7

27

158 40

#lit tại 6

`2 dQ

Page 105: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 105/141

`2 dQ

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

105

f#a 5hMn tK U

6

9

43 7

27

158 40

Page 106: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 106/141

!ài tập

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

106

>ài tậ1

Page 107: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 107/141

>ài tậ1

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

107

J fây dn$ $iGi th9t (#a ;t đ2nh :@i kh#a ch1trư@c ra khi cây nh* 5hân t_ kiHJ

FJ wby chứn$ t r\n$ trư6n$ h'5 t_ kiH trn$8_nh ch1 cây nh* 5hân t_ kiH l[ "l1$Fn&P

>ài tậ1

Page 108: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 108/141

ậ1

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

108

J Bi^ dizn t_nh trn$ cây nh* 5hân t_ kiH sakhi thc hi+n c)c tha1 t)c sa.  L\n '?,t thNm các n"d$ th$" tình t[H J 5 B K I P O

C A L r _ * )  r/a J)  r/a I)  Ch" iết kết #u Dau khi duyệt cây th$" các tình t[

&iQa7 t?Fc và Dau)

>ài tậ1

Page 109: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 109/141

ậ1

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

109

EJ fây dn$ $iGi th9t thc hi+n c)c tha1 t)c satrIn cây nh* 5hân t_ kiH.

- 7H s% n1de l)J

- Tpnh đ; ca1 câyJ- Tpnh đ; ca1 ca n1de tr1n$ câyJ

- ft ra c)c n1de c# cun$ đ; ca1J

>ài tậ1

Page 110: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 110/141

ậ1

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

110

UJ Bi^ dizn t_nh trn$ cây cân 8\n$ AVL4cây AAsa khi thc hi+n c)c tha1 t)c sa.  L\n '?,t thNm các n"d$ th$" tình t[H (Z X 4 (( ( (Y U

Z ( T (4 Y 4U (U 4S 4Z (T  r/a (Z)  r/a (

L?u wH ch" iết các t?n& h,p m2t cân `n&)

>ài tậ1

Page 111: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 111/141

ậ1

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

111

J wby :x cây AVL :@i F n0t c# chi< ca1 cc đitr1n$ tt cG c)c cây AVL F n0tJ

WJ T_ dby / kh1) sa1 ch1 khi lMn lư't dun$th9t t1)n thI :[1 cây AVL sx 5hGi thc hi+n=i tha1 t)c cân 8\n$ "LLm LRm RLm RR& li ptnht lMnJ

Page 112: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 112/141

./i và 0áp

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

112

 !k( thV* K2 dQ thV* 1h5n tW

Page 113: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 113/141

k Q 1

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

113

`2 dQ

Page 114: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 114/141

Q

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

114

Vs cây AA th$" th t[ nh+p Dau 0âyHU7 X7 Y7 Z7 W7 7 (W7 4X7 T7 US

`2 dQ

Page 115: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 115/141

Q

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

115

4

*hNm 4ChGn HI: Jh< 7

`2 dQ

Page 116: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 116/141

Q

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

116

4

7

*hNm 7ChGn HI: Jh< 6

`2 dQ

Page 117: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 117/141

Q

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

117

4

7

6

*hNm 6K)n !.t c.c li<n =%t i th<

`2 dQ

Page 118: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 118/141

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

118

4

76

*hNm 6K)( #hEi nLt 7

`2 dQ

Page 119: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 119/141

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

119

4

6

7

M%t NE !) =hi N)( #hEi nLt 7

`2 dQ

Page 120: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 120/141

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

120

4 6 7

>)i li<n =%t ng)ng li<n ti%#

`2 dQ

Page 121: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 121/141

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

121

6

74

ChGn HI: Jh< 3

`2 dQ

Page 122: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 122/141

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

122

6

74

3

6

743

*hNm 3

`2 dQ

Page 123: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 123/141

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

123

6

743

ChGn HI: Jh< 5

`2 dQ

Page 124: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 124/141

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

124

6

743

5

*hNm 5

`2 dQ

Page 125: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 125/141

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

125

6

743 5

`2 dQ

Page 126: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 126/141

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

126

6

7

3

4

5

/c hiện hành c) 4; 6

`2 dQ

Page 127: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 127/141

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

127

6

73

4

5

`2 dQ

Page 128: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 128/141

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

128

6

73

4

5

ChGn HI: Jh< 9

`2 dQ

Page 129: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 129/141

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

129

6

73

4

5

9

*hNm 9ChGn HI: Jh< 15

`2 dQ

Page 130: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 130/141

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

130

6

73

4

5

9

15

Page 131: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 131/141

`2 dQ

Page 132: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 132/141

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

132

6

93

4

5

715

`2 dQ

Page 133: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 133/141

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

133

6 9

3

4

57 15

`2 dQ

Page 134: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 134/141

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

134

6

9

3

4

5 7 15

ChGn HI: Jh< 27

`2 dQ

Page 135: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 135/141

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

135

6

9

3

4

5 7 15

27

*hNm 27ChGn HI: Jh< 8

`2 dQ

Page 136: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 136/141

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

136

6

9

3

4

5 7 15

278

*hNm 8

`2 dQ

Page 137: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 137/141

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

137

6

9

3

4

5 7 15 278

ChGn HI: Jh< 40

`2 dQ

Page 138: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 138/141

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

138

6

9

3

4

5 7 15 278

40

*hNm 40

`2 dQ

Page 139: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 139/141

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

139

6

9

3

4

5 7 15 278 40

`2 dQ

Page 140: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 140/141

Cấu trúc dữ liệu và giải thuật - HCMUS 2011

140

6

9

3

4

5 7 27

15

8

40

`2 dQ

Page 141: CTDL-03-Tree.pptx

7/23/2019 CTDL-03-Tree.pptx

http://slidepdf.com/reader/full/ctdl-03-treepptx 141/141

141

6

9

3

4

5 7

27

158 40