1. Trang chủ
  2. » Công Nghệ Thông Tin

Cây nhị phân docx

18 371 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 18
Dung lượng 745,5 KB

Nội dung

CÂY NHỊ PHÂN TMT 1 CÁC KHÁI NI MỆ 1. C u trúc cây nh phânấ ị 2. Các lo i cây nh phânạ ị a/ Cây nh phân đúngị (Strictly Binary Tree): T t c các nút đ u có đúng hai con ấ ả ề (ngo i tr nút lá). ạ ừ 2 B A C X F H I D E G Y B A C X F H I D E G Y CÁC KHÁI NI MỆ  b/ Cây nh phân đ yị ầ (Complete Binary Tree): là cây nh phân đúng và t t c các ị ấ ả nút lá cùng m c. ở ứ 3 B A C F G N O D E J K L M H I B A C F G N O D E J K L M H I Đ C ĐI M CÂ Y NH PHÂN TÌM KI MẶ Ể Ị Ế  Là cây nh phânị  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ấ ủ 7 7 7 7 3 3 36 36 1 1 6 6 15 15 40 40 23 23 4 4 4  Cây nh phân cân b ngị ằ (AVL): M t cây ộ nh phân đ c g i là cây nh phân cân b ng ị ượ ọ ị ằ n u và ch n u đ i v i ế ỉ ế ố ớ m i nút c a cây thì ọ ủ chi u caoề c a cây con bên trái và chi u ủ ề cao c a cây con bê n ph i h n kém nhau ủ ả ơ nhi u nh t là 1ề ấ (Theo Adelson - Velski và Landis). 5 B A C E F I J D G H B A C E F I J D G H  Cây nh phân cân b ng hoàn toànị ằ : M t ộ cây nh phân đ c g i là cây nh phân cân ị ượ ọ ị b ng hoàn toàn ằ n u và ch n u đ i v i ế ỉ ế ố ớ m i nút c a cây thì ọ ủ s nútố c a cây con ủ bên trái và s nút c a cây con bên ph i ố ủ ả h n kém nhau nhi u nh t là 1ơ ề ấ 6 B A C E F I E D H H B A C E F I E D H H Nút Đ NH NGHĨA KI U D LI UỊ Ể Ữ Ệ typedef struct Node { <Data> Key; struct Node *Left, *Right; } *Tree; Giá trị Trỏ trái Trỏ phải TNODE Key pLeft pRight 7 KHAI BÁO CÂY NH Ị typedef struct Node { int Key; struct Node *Left, *Right; } *Tree; 8 XÂY D NG CÂY Ự Ví dụ: có dãy s 20, 70, 30, 25, 35, 50, 80, 40, ố 60, 10 (3 tr ng h p g c là 50, g c là, 10 hay g c là ườ ợ ố ố ố 80) 9 Ví dụ: có dãy s 20, 70, 30, 25, 35, 50, 80, 40, ố 60, 10 10 [...]...Ví dụ: có dãy số 20, 70, 30, 25, 35, 50, 80, 40,  60, 10 11 DUYỆT CÂY Thứ tự trước  (NLR) Thứ tự giữa  (LNR) Thứ tự sau  (LRN) …… 12 NLR 7 7 3 3 36 36 1 1 6 6 4 4 15 15 40 40 23 23 7     L7        R7 7    3   L3   R3           36      L36   7      3     1     6  L6        36   15  R15    40 7      3     1     6   4         36   15  23      40 R36 13 NLR Tại node t đang xét, nếu  khác rỗng thì  In giá trị của t  Duyệt cây con bên trái  của t theo thứ tự NLR... 15 1     3       4    6                7      15   23    36     40 LNR void LNR (TREE t) Tại node t đang xét, nếu  { khác rỗng thì if(t!=NULL)  Duyệt cây con bên trái  { của t theo thứ tự LNR LNR(t->pLeft);  In giá trị của t coutpRight);  Duyệt cây con bên phải  cout . CÂY NHỊ PHÂN TMT 1 CÁC KHÁI NI MỆ 1. C u trúc cây nh phân ị 2. Các lo i cây nh phân ị a/ Cây nh phân đúngị (Strictly Binary Tree): T t c các nút. a cây ủ Nút có giá tr l n ị ớ nh t n m ph i ấ ằ ở ả nh t c a cây ủ 7 7 7 7 3 3 36 36 1 1 6 6 15 15 40 40 23 23 4 4 4  Cây nh phân cân b ngị ằ (AVL): M t cây ộ nh phân đ c g i là cây nh phân. J D G H  Cây nh phân cân b ng hoàn toànị ằ : M t ộ cây nh phân đ c g i là cây nh phân cân ị ượ ọ ị b ng hoàn toàn ằ n u và ch n u đ i v i ế ỉ ế ố ớ m i nút c a cây thì ọ ủ s nútố c a cây con ủ bên

Ngày đăng: 09/07/2014, 09:20

TỪ KHÓA LIÊN QUAN

w