C u trúc d li u và thu t gi i
N I DUNG
CÂY NH PHÂN TÌM KI M CÂN B NG
C u trúc d li u và thu t gi i
Ð nh nghĩa
Cây nh phân tìm ki m cân b ng là cây ế mà t i m i
nút c a đ cao c a cây con trái c a cây con
ph i chênh l ch không quá m t
Ví d :
44
23 88
13 37 59 108
15 30 40 55 71
C u trúc d li u và thu t gi i
T ch c d li u
Ch s cân b ng = đ l ch gi a cây trái
cây ph i c a m t nút
Các giá tr h p l :
CSCB( p) = 0 Đ cao cây trái ( p) = Đ
cao cây ph i ( p)
CSCB( p) = 1 Đ cao cây trái ( p) < Đ
cao cây ph i ( p)
CSCB( p) = -1 Đ cao cây trái ( p) > Đ
cao cây ph i ( p)
C u trúc d li u và thu t gi i
T ch c d li u(tt)
typedef struct tagAVLNode {
char balFactor; //ch s cân b ng
Data key;
struct tagAVLNode* pLeft;
struct tagAVLNode* pRight;
}AVLNode;
typedef AVLNode*AVLTree;
C u trúc d li u và thu t gi i
Các tr ng h p m t cân b ng do ườ
l ch ti
T
T
1
L1 R
1
h
h-1
h-1
L
R1
T
T
1
L
1
h
h-1
L
R R h-1
T
T
1
L1
h
h-1
h
L
R
L1