Bài giảng Cấu trúc dữ liệu và thuật toán: Chương 4 - Trịnh Anh Phúc, Nguyễn Đức Nghĩa
lượt xem 4
download
Bài giảng "Cấu trúc dữ liệu và thuật toán - Chương 4: Cây" cung cấp cho người học các kiến thức: Định nghĩa và các khái niệm, cây nhị phân, các ứng dụng của cây, tổng kết. Mời các bạn cùng tham khảo nội dung chi tiết.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng Cấu trúc dữ liệu và thuật toán: Chương 4 - Trịnh Anh Phúc, Nguyễn Đức Nghĩa
- Chương 4 : Cây Trịnh Anh Phúc, Nguyễn Đức Nghĩa 1 1 Bộ môn Khoa Học Máy Tính, Viện CNTT & TT, Trường Đại Học Bách Khoa Hà Nội. Ngày 1 tháng 12 năm 2013 CuuDuongThanCong.com Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, ViệnCấu CNTT trúc&dữTT, liệu Trường và giải thuật Đại Học Bách Khoa NgàyHà1 Nội. tháng) 12 năm 2013 1 / 70
- Giới thiệu 1 Định nghĩa và các khái niệm Định nghĩa cây Các thuật ngữ chính Cây có thứ tự Cây có nhãn Cấu trúc dữ liệu trừu tượng cây 2 Cây nhị phân Định nghĩa và tính chất 3 Các ứng dụng của cây Cây nhị phân biểu thức Cây quyết định Mã Huffman Cây gọi đệ qui CuuDuongThanCong.com 4 Tổng kết Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, ViệnCấu CNTT trúc&dữTT, liệu Trường và giải thuật Đại Học Bách Khoa NgàyHà1 Nội. tháng) 12 năm 2013 2 / 70
- Định nghĩa và các khái niệm Định nghĩa cây Cây bao gồm các nút, có một nút đặt biệt được gọi là nút gốc (root ) và các cạnh nối các nút. Cây được định nghĩa đệ qui như sau Bước cơ sở : một nút r được coi là cây và r được gọi là gốc cây. Bước đệ qui : Giả sử T1 , T2 , · · · , Tk là các cây với gốc là r1 , r2 , · · · , rk , ta có thể xây dựng cây mới bằng cách đặt r làm nút cha (parent) của các nút r1 , r2 , · · · , rk . Trong cây mới tạo ra r là gốc và T1 , T2 , · · · , Tk là các cây con của gốc r . Các nút r1 , r2 , · · · , rk được gọi là con của nút r . CuuDuongThanCong.com Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, ViệnCấu CNTT trúc&dữTT, liệu Trường và giải thuật Đại Học Bách Khoa NgàyHà1 Nội. tháng) 12 năm 2013 3 / 70
- Định nghĩa và các khái niệm Định nghĩa cây (tiếp) Hình minh họa định nghĩa đệ qui của cây r r1 r2 ... rk T1 T2 ... Tk CuuDuongThanCong.com Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, ViệnCấu CNTT trúc&dữTT, liệu Trường và giải thuật Đại Học Bách Khoa NgàyHà1 Nội. tháng) 12 năm 2013 4 / 70
- Định nghĩa và các khái niệm Các ứng dụng của dữ liệu trừu tượng cây Cây trong ứng dụng thực tế Biểu đồ lịch thi đấu Cây gia phả Biều đồ phân cấp quản lý Cây thư mục quản lý file Cây biểu thức .... Sau đây là một vài hình ảnh minh họa các ứng dụng này CuuDuongThanCong.com Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, ViệnCấu CNTT trúc&dữTT, liệu Trường và giải thuật Đại Học Bách Khoa NgàyHà1 Nội. tháng) 12 năm 2013 5 / 70
- Ứng dụng cây gia phả CuuDuongThanCong.com Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, ViệnCấu CNTT trúc&dữTT, liệu Trường và giải thuật Đại Học Bách Khoa NgàyHà1 Nội. tháng) 12 năm 2013 6 / 70
- Ứng dụng biểu đồ phân cấp quản lý CuuDuongThanCong.com Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, ViệnCấu CNTT trúc&dữTT, liệu Trường và giải thuật Đại Học Bách Khoa NgàyHà1 Nội. tháng) 12 năm 2013 7 / 70
- Ứng dụng cây thư mục CuuDuongThanCong.com Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, ViệnCấu CNTT trúc&dữTT, liệu Trường và giải thuật Đại Học Bách Khoa NgàyHà1 Nội. tháng) 12 năm 2013 8 / 70
- Cây Các thuật ngữ chính Nút - node Gốc - root Lá - leaf Con - child Cha - parent Tổ tiên - ascentors Hậu duệ - descendants Anh em - sibling Chiều cao - hight Nút trong - internal node CuuDuongThanCong.com Đường đi - path Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, ViệnCấu CNTT trúc&dữTT, liệu Trường và giải thuật Đại Học Bách Khoa NgàyHà1 Nội. tháng) 12 năm 2013 9 / 70
- Cây Phân loại các nút trong cây a b c d e f g h i j k CuuDuongThanCong.com Chú thích : Nút gốc mầu xanh thẫm, nút lá mầu xanh lá cây còn nút trong mầu trắng. Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, ViệnCấu CNTT trúc&dữTT, liệu Trường và giải thuật Đại Học Bách Khoa NgàyHà 1 tháng Nội. )12 năm 2013 10 / 70
- Cây Các nút cùng cha gọi là các nút anh&em. Trong hình là ba nút b,c,d có cùng nút cha là a, được đánh dấu bởi hình elíp đỏ. a b c d e f g h i j CuuDuongThanCong.com k Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, ViệnCấu CNTT trúc&dữTT, liệu Trường và giải thuật Đại Học Bách Khoa NgàyHà 1 tháng Nội. )12 năm 2013 11 / 70
- Cây Cây con của nút gốc a, a b c d e f g h i j k CuuDuongThanCong.com Chú thích : Vòng tròn bao mầu đỏ chỉ ra một cây con của nút gốc a. Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, ViệnCấu CNTT trúc&dữTT, liệu Trường và giải thuật Đại Học Bách Khoa NgàyHà 1 tháng Nội. )12 năm 2013 12 / 70
- Cây Đường đi trên cây từ nút gốc a đến các nút lá i và h (gạch nét dứt mầu đỏ). Đường thứ nhất {a,b,f,i} và đường thứ hai là {a,d,h}. a b c d e f g h i j CuuDuongThanCong.com k Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, ViệnCấu CNTT trúc&dữTT, liệu Trường và giải thuật Đại Học Bách Khoa NgàyHà 1 tháng Nội. )12 năm 2013 13 / 70
- Cây Độ cao của cây và độ sâu của cây. Do nút gốc có mức 1 nên nút lá xa nhất k có mức chính là độ cao và độ sâu của cây, vậy cây trên có độ cao là 5. a Mức=1 b c d e f g h i j CuuDuongThanCong.com k Mức=5 Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, ViệnCấu CNTT trúc&dữTT, liệu Trường và giải thuật Đại Học Bách Khoa NgàyHà 1 tháng Nội. )12 năm 2013 14 / 70
- Cây Bậc (degree) của một nút là số nút con của nó. Vậy nút gốc a có bậc 3 trong khi nút lá như h luôn có bậc 0. a Bậc=3 b c d e f g h Bậc=0 i j CuuDuongThanCong.com k Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, ViệnCấu CNTT trúc&dữTT, liệu Trường và giải thuật Đại Học Bách Khoa NgàyHà 1 tháng Nội. )12 năm 2013 15 / 70
- Cây Cây có thứ tự Thứ tự của các nút trên cây : Các nút con của một nút thường được sắp xếp theo thứ tự từ trái sang phải a a b c c b Như vậy rõ ràng hai cây trên khác nhau do thứ tự nút con của nút a là khác nhau. Hay nút b được xếp trước nút c trong cây bên trái, trong khi nó được xếp sau nút c trong cây bên phải. CuuDuongThanCong.com Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, ViệnCấu CNTT trúc&dữTT, liệu Trường và giải thuật Đại Học Bách Khoa NgàyHà 1 tháng Nội. )12 năm 2013 16 / 70
- Cây Xếp thứ tự các nút Có ba cách thông thường để xác định thứ tự các nút 1 Thứ tự trước (Preorder) 2 Thứ tự giữa (Inorder) 3 Thứ tự sau (Postorder) r r1 r2 ... rk ... T1 CuuDuongThanCong.com T2 Tk Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, ViệnCấu CNTT trúc&dữTT, liệu Trường và giải thuật Đại Học Bách Khoa NgàyHà 1 tháng Nội. )12 năm 2013 17 / 70
- Cây Thứ tự trước - Preorder traversal Gốc r của cây tiếp đến là các nút của T1 được duyệt theo thứ tự trước tiếp đến là các nút của T2 được duyệt theo thứ tự trước... và cuối cùng là các nút của Tk được duyệt theo thứ tự trước r r1 r2 ... rk ... T1 CuuDuongThanCong.com T2 Tk Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, ViệnCấu CNTT trúc&dữTT, liệu Trường và giải thuật Đại Học Bách Khoa NgàyHà 1 tháng Nội. )12 năm 2013 18 / 70
- Cây Thứ tự sau - Postorder traversal các nút của cây T1 theo thứ tự sau tiếp đến là các nút của T2 được duyệt theo thứ tự sau... tiếp đến là các nút của Tk được duyệt theo thứ tự sau sau cùng là nút gốc r r r1 r2 ... rk ... T1 CuuDuongThanCong.com T2 Tk Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, ViệnCấu CNTT trúc&dữTT, liệu Trường và giải thuật Đại Học Bách Khoa NgàyHà 1 tháng Nội. )12 năm 2013 19 / 70
- Cây Thứ tự giữa - Inorder traversal các nút của cây T1 theo thứ tự giữa tiếp đến nút gốc r tiếp đến các nút của cây T2 , · · · , Tk mỗi nhóm nút được xét theo thứ tự giữa. r r1 r2 ... rk ... T1 CuuDuongThanCong.com T2 Tk Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, ViệnCấu CNTT trúc&dữTT, liệu Trường và giải thuật Đại Học Bách Khoa NgàyHà 1 tháng Nội. )12 năm 2013 20 / 70
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng Cấu trúc dữ liệu - Bài 1:Tổng quan về cấu trúc dữ liệu và giải thuật
47 p | 174 | 17
-
Bài giảng Cấu trúc dữ liệu 1: Chương 1 - Lương Trần Hy Hiến
7 p | 162 | 9
-
Bài giảng Cấu trúc dữ liệu và giải thuật trong C++ - Bài 8: Cấu trúc dữ liệu ngăn xếp
28 p | 77 | 9
-
Bài giảng Cấu trúc dữ liệu giải thuật: Các kiểu dữ liệu trừu tượng cơ bản - Cấu trúc dữ liệu tuyến tính
92 p | 116 | 9
-
Bài giảng Cấu trúc dữ liệu và giải thuật: Cấu trúc dữ liệu cây đỏ đen - Bùi Tiến Lên
25 p | 79 | 8
-
Bài giảng Cấu trúc dữ liệu và giải thuật – Bài 17: Cấu trúc dữ liệu dạng cây
21 p | 77 | 8
-
Bài giảng Cấu trúc dữ liệu và giải thuật: Các cấu trúc dữ liệu
193 p | 57 | 7
-
Bài giảng Cấu trúc dữ liệu và giải thuật: Chương 1 - Trần Minh Thái (2016)
62 p | 94 | 6
-
Bài giảng Cấu trúc dữ liệu và giải thuật: Chương 1 - Trần Minh Thái (Trường Đại học Hồng Bàng )
62 p | 158 | 6
-
Bài giảng Cấu trúc dữ liệu - Chương 3: Cấu trúc cây
65 p | 58 | 6
-
Bài giảng Cấu trúc dữ liệu và giải thuật: Cấu trúc dữ liệu cây AA - Bùi Tiến Lên
30 p | 35 | 6
-
Bài giảng Cấu trúc dữ liệu và giải thuật: Chương 1 – Trần Minh Thái (2017)
67 p | 106 | 4
-
Bài giảng Cấu trúc dữ liệu và giải thuật: Cấu trúc dữ liệu cây - Bùi Tiến Lên
68 p | 40 | 4
-
Bài giảng Cấu trúc dữ liệu: Chương 1 - ThS. Thiều Quang Trung (2018)
44 p | 43 | 4
-
Bài giảng Cấu trúc dữ liệu và giải thuật: Cấu trúc dữ liệu cây AVL - Bùi Tiến Lên
38 p | 47 | 4
-
Bài giảng Cấu trúc dữ liệu và giải thuật: Chương 5 - Ngô Quang Thạch
24 p | 58 | 3
-
Bài giảng Cấu trúc dữ liệu và giải thuật: Chương 2 - Th.S Thiều Quang Trung
41 p | 68 | 3
-
Bài giảng Cấu trúc dữ liệu giải thuật: Cấu trúc dữ liệu
17 p | 50 | 2
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn