1. Trang chủ
  2. » Giáo Dục - Đào Tạo

cấu trúc dữ liệu chương 5

22 118 0

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

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 22
Dung lượng 282,62 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

tài liệu uy tín được biên soạn bởi giảng viên đại học Bách Khoa TPHCM, thuận lợi cho qua trình tự học, nghiên cứu bộ tự động hóa, điện tử, cơ điện tử, cơ khí chế tạo máy, lập trình nhúng, Tài liệu được kiểm duyệt bởi giảng viên, phòng đào tạo trường đại học bách khoa, lưu hành nội bộ

Trang 1

Chương 5

Cây

Trang 2

Nội dung

™ Ðịnh nghĩa các thuật ngữ.

™ Các phép duyệt cây.

™ Một số ứng dụng của cây.

Trang 3

Các định nghĩa

™ Định nghĩa cây

mỗi phần tử được gọi là nút (node), trong đó:

y Một nút được gọi là nút gốc (root).

y Các nút còn lại được chia thành m ≥ 0 nhóm,

mỗi nhóm là một cây và được gọi là cây con (subtree).

rỗng.

Trang 4

Các định nghĩa

™ Bậc của nút và bậc của cây

f Bậc của nút là số cây con của nút này.

f Bậc của cây là bậc lớn nhất của tất cả các nút.

(n-arity tree).

f Cây nhị phân là cây có bậc bằng 2.

Trang 5

™ Mức của nút và chiều cao của cây

f Mức của nút gốc bằng 1.

f Mức của nút khác nút gốc bằng mức của nút gốc của cây con nhỏ nhất chứa nút này cộng 1.

f Chiều cao của cây là mức lớn nhất của tất cả các nút lá.

Trang 6

Các định nghĩa

™ Nút trước và nút sau

của cây có chứa nút x; nút x được gọi là nút

sau của nút y.

™ Nút cha, nút con và nút anh em

trước của nút x và mức của nút x bằng mức

của nút y.

cùng nút cha.

Trang 7

Bậc của A là 2, bậc của C là 0.

Cây gốc A là cây nhị phân (bậc 2)

A là nút gốc, là nút cha của B, là nút trước của D, có mức bằng 1.

B là nút trung gian, là nút con của A, có mức bằng 2.

C là nút là, là nút anh em với D.

Chiều cao của cây gốc A bằng 4.

Trang 8

Các phép duyệt cây

™ Phép duyệt cây là quá trình đi đến tất cả các nút của cây.

phép duyệt cây (dùng giải thuật đệ quy vì cây

có cấu trúc đệ quy).

y N là nút gốc.

y L là cây con bên trái.

y R là cây con bên phải.

™ Phép duyệt thứ tự đầu: N LR và N RL

™ Phép duyệt thứ tự giữa: L N R và R N L

™ Phép duyệt thứ tự cuối: LR N và RL N

Trang 9

Các phép duyệt cây

p

p^.right p^.left

Trang 10

Định nghĩa cấu trúc cây nhị phân

Trang 16

new(p); p^.info := x, p^.next := nil;

else Queue.rear^.next := p;

Queue.rear := p

end ;

Trang 18

Các phép duyệt cây

™ Thứ tự duyệt theo mức

procedure Traversing_Level (p: ref);

var Queue: queue_type;

begin

Queue_Init (Queue);

if p <> nil then Queue_Insert (Queue, p);

while not Queue_Empty (Queue) do

begin

Queue_Delete (Queue, p); writeln (p^.info);

if p^.left <> nil then

Queue_Insert (Queue, p^.left);

if p^.right <> nil then

Queue_Insert (Queue, p^.right);

end

end ;

Trang 19

Một số ứng dụng của cây

™ Tạo cây

procedure Tree_Create ( var p: ref);

{Tạo cây gốc p gồm các nút chứa số nguyên

dương - Dùng phép duyệt cây NLR}

Lệnh gọi: Tree_Create (Root);

Trang 20

Một số ứng dụng của cây

Với dãy số nhập vào là 1 3 0 0 4 2 0 0 5 0 0

thì quá trình tạo cây theo thủ tục Tree_Create như

Trang 22

Một số ứng dụng của cây

™ Tìm chiều cao của cây

function Tree_Height (p: ref): integer;

Ngày đăng: 03/02/2018, 08:23

TỪ KHÓA LIÊN QUAN