1. Trang chủ
  2. » Mẫu Slide

CẤU TRÚC DỮ LIỆU VÀ GIẢI THUẬT - HCMUS 2011

10 2 0

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Cấu Trúc Dữ Liệu Và Giải Thuật
Tác giả Văn Chí Nam, Nguyễn Thị Hồng Nhung, Đặng Nguyễn Đức Tiến
Trường học Hcmus
Năm xuất bản 2011
Định dạng
Số trang 10
Dung lượng 1,23 MB

Nội dung

Kỹ Thuật - Công Nghệ - Kinh tế - Thương mại - Khoa Học - Science FIT-HCMUS 1 Giảng viên: Văn Chí Nam – Nguyễn Thị Hồng Nhung – Đặng Nguyễn Đức Tiến 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 FIT-HCMUS 2 Cấu trúc dữ liệu và giải thuật - HCMUS 2011 3 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  … FIT-HCMUS 3 Cấu trúc dữ liệu và giải thuật - HCMUS 2011 5 a b d i j o p k q e f c g l m h n Cấu trúc dữ liệu và giải thuật - HCMUS 2011 6 Sơ đồ tổ chức Cây thư mục FIT-HCMUS 4 Cấu trúc dữ liệu và giải thuật - HCMUS 2011 7 Cây (cây có gốc) được xác định đệ quy như sau: 1. Tập hợp gồm 1 đỉnh là một cây. Cây này có gốc là đỉnh duy nhất của nó. 2. Gọi T1, T2, … Tk (k ≥ 1) là các cây không cắt nhau có gốc tương ứng r1, r2, … rk. Giả sử r là một đỉnh mới không thuộc các cây Ti. Khi đó, tập hợp T gồm đỉnh r và các cây Ti tạo thành một cây mới với gốc r. Các cây T1, T2, … Tk được gọi là cây con của gốc r. Cấu trúc dữ liệu và giải thuật - HCMUS 2011 8 r1 T1 r2 T2 rk Tk Nút gốc Cây con FIT-HCMUS 5 Cấu trúc dữ liệu và giải thuật - HCMUS 2011 9  node: đỉnh  root: gốc cây  leaf: lá  inner nodeinternal node: đỉnh trong  parent: đỉnh cha  child: đỉnh con  path: đường đi Cấu trúc dữ liệu và giải thuật - HCMUS 2011 10 r1 T1 r2 T2 rk Tk Nút gốc Cây con Nút lá k1 k2 k5k4k3 k6 Đường đi FIT-HCMUS 6 Cấu trúc dữ liệu và giải thuật - HCMUS 2011 11  degreeorder: bậc  Bậc của node: Số con của node  Bậc của cây: bậc lớn nhất trong số các con  depthlevel: độ sâumức  Mức (độ sâu)của node: Chiều dài của đường đi từ node gốc đến node đó cộng thêm 1.  height: chiều cao  Chiều cao cây:  Cây rỗng: ...

Trang 1

Giảng viên:

Văn Chí Nam – Nguyễn Thị Hồng Nhung – Đặng Nguyễn Đức Tiến

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

Trang 2

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

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

Trang 3

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

5

a b

d

k q

c g

h n

6

Trang 4

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

Cây (cây có gốc) được xác định đệ quy như sau:

1 Tập hợp gồm 1 đỉnh là một cây Cây này có gốc là

đỉnh duy nhất của nó.

2 Gọi T 1, T 2, … T k (k ≥ 1) là các cây không cắt nhau có gốc tương ứng r 1, r 2, … r k

Giả sử r là một đỉnh mới không thuộc các cây T i Khi đó,

tập hợp T gồm đỉnh r và các cây T i tạo thành một cây

mới với gốc r Các cây T 1, T 2, … T k được gọi là cây con của gốc r.

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

8

r1

T1

r2

T2

rk

Tk

Nút gốc

Cây con

Trang 5

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

9

 node: đỉnh

 root: gốc cây

 leaf: lá

 inner node/internal node: đỉnh trong

 parent: đỉnh cha

 child: đỉnh con

 path: đường đi

10

r1

T1

r2

T2

rk

Tk

Nút gốc

Cây con

Nút lá

k5

k4

k3

Trang 6

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

 degree/order: bậc

 Bậc của node: Số con của node

 Bậc của cây: bậc lớn nhất trong số các con

 depth/level: độ sâu/mức

 Mức (độ sâu)của node: Chiều dài của đường đi từ node gốc đến node đó cộng thêm 1.

 height: chiều cao

 Chiều cao cây:

 Cây rỗng: 0

 Cây khác rỗng: Mức lớn nhất giữa các node của cây

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

12

r1

T1

r2

T2

rk

Tk

Nút gốc

Cây con

Nút lá

Độ cao = 4 Bậc = k

k5

k4

k3

k6

Bậc = 2

Đường đi

Trang 7

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

13

14

một cách có hệ thống.

phép duyệt cây.

 Duyệt trước (Pre-order)

 Duyệt giữa (In-order)

 Duyệt sau (Post-order)

Trang 8

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

Tìm cha một đỉnh.

• Parent(x)

Tìm đỉnh con trái nhất.

• EldestChild(x)

Tìm đỉnh kề phải.

• NextSibling(x)

h g

d

i

Eldest-Child(c) = g

NextSibling(g) = h

NextSibling(h)?

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

16

Duyệt trước

• a b d e i j c f g k h

Duyệt giữa

• d b i e j a f c k g h

Duyệt sau

• d i j e b f k g h c a

Duyệt theo chiều sâu

h f

d

k

Trang 9

void Preorder(NODE A)

{

NODE B;

Visit(A);

B = EldestChild(A);

while (B !=  ) {

Preorder(B);

B = NextSibling(B);

} }

{

NODE B;

B = EldestChild(A);

Postorder(B);

B = NextSibling(B);

}

Visit(A);

}

17

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

18

In-Order

void Inorder(NODE A)

{

NODE B;

B = EldestChild(A);

if (B !=  ) {

Inorder(B);

B = NextSibling(B);

}

Visit(A);

Inorder(B);

B = NextSibling(B);

}

Trang 10

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

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

20

h f

d

k

info child

1 a

2 b

3 c

4 d

5 e

6 f

7 g

8 h

9 i

10 j

11 k

id next 2 4 6 9

11

5 7 10 3

8

Ngày đăng: 12/03/2024, 22:03

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w