Thiều Quang Trung Bộ môn Khoa học cơ bản Trường Cao đẳng Kinh tế Đối ngoại... Quan hệ này gọi là quan hệ cha –con..[r]
Trang 1C HƯƠNG 6
K IỂU C ẤU T RÚC C ÂY
GV Th.S Thiều Quang Trung
Bộ môn Khoa học cơ bản Trường Cao đẳng Kinh tế Đối ngoại
Trang 2• Khái niệm cấu trúc cây - tree
1
• Đặc điểm cấu trúc cây
2
• Định nghĩa kiểu cấu trúc cây
3
• Các thao tác trên cấu trúc cây
4
Trang 3Khái niệm cấu trúc cây
• Cây là một tập hợp T các phần tử (gọi là nút của cây), gồm có:
– một nút đặc biệt gọi là nút gốc,
– các nút còn lại được chia thành những tập rời
nhau T1, T2, …,Tn theo quan hệ phân cấp, trong đó
Ti cũng là một cây
• Mỗi nút ở cấp i sẽ quản lý một số nút ở cấp
i+1 Quan hệ này gọi là quan hệ cha –con
Trang 4cây con của nút đó
• Nút gốc: là nút không
có nút cha
• Nút lá: là nút có bậc
bằng 0
• Nút nhánh: là nút có
bậc khác 0 và không
phải là gốc
2
2
1
1
0
0
0
0
Trang 5Mức 4 Mức 3 Mức 2 Mức 1
Khái niệm cấu trúc cây
• Chiều dài đường đi đến nút x: là số nhánh cần đi qua
kể từ gốc đến x
x
Trang 6• Giá trị của một node bất kỳ luôn lớn hơn giá trị của tất cả các node bên trái và nhỏ hơn giá trị tất cả các node bên phải
Nút có giá trị nhỏ nhất nằm ở trái nhất của cây
Nút có giá trị lớn nhất nằm ở phải nhất của cây
23
4
Trang 7Định nghĩa kiểu dữ liệu
typedef struct TNODE
{
<Data> Key;
struct TNODE *pLeft, *pRight;
Nút
Giá trị
Trỏ trái Trỏ phải
TNODE
Key
pLeft pRight
Trang 8typedef struct TNODE
{
int Key;
} *TREE;
Trang 9Các lưu ý khi cài đặt
vào cây
kiếm, huỷ, …
Trang 101 Tạo cây
2 Duyệt cây
3 Cho biết các thông tin của cây
4 Tìm kiếm
5 Xoá node trên cây