1. Trang chủ
  2. » Giáo án - Bài giảng

Bài giảng cấu trúc dữ liệu và giải thuật cây TS đào nam anh

21 156 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 21
Dung lượng 625,87 KB

Nội dung

DATA STRUCTURE AND ALGORITHM Trees CẤU TRÚC DỮ LIỆU GIẢI THUẬT Cây Dr Dao Nam Anh Data Structure and Algorithm Resource - Reference Slides adapted from James B D Joshi, edit by Dao Nam Anh Major Reference: • Robert Sedgewick, and Kevin Wayne, “Algorithms” Princeton University, 2011, Addison Wesley • Algorithm in C (Parts 1-5 Bundle)- Third Edition by Robert Sedgewick, Addison-Wesley • Cấu trúc liệu giải thuật, Đinh Mạnh Tường • Giải thuật lập trình, Lê Minh Hồng, Đại Học Sư Phạm, 2002 Data Structure and Algorithm Tree - Cây A E B C D G F I H Data Structure and Algorithm Tree - Cây • • Cây cấu trúc liệu gồm tập hữu hạn nút, nút có quan hệ phân cấp gọi quan hệ "cha - con" Có nút đặc biệt gọi gốc (root) A E B C D G F I H Data Structure and Algorithm Tree - Cây • Có thể định nghĩa đệ quy sau: A Mỗi nút cây, nút gốc E B C D G F I H Data Structure and Algorithm Tree - Cây • • • • • Đỉnh Cha –con Ngang hàng Lá Cây nhị phân: nút có tối đa hai nhánh Với nút người ta phân biệt trái phải nút root A parent B C sibling D G child E F I H Binary tree Leaves/terminal nodes Data Structure and Algorithm Tree - Cây • • Chiều cao (height) hay chiều sâu (depth) số mức lớn nút có Một tập hợp phân biệt gọi rừng (forest), C rừng Nếu bỏ nút gốc tạo thành rừng A E B D G F I H Data Structure and Algorithm Tree - Cây Ví dụ: • Mục lục sách với phần, chương, bài, mục • Cấu trúc thư mục đĩa • Gia phả họ tộc có cấu trúc C • Một biểu thức số học gồm phép toán cộng, trừ, nhân, chia A E B D G F I H Data Structure and Algorithm Biểu diễn Biểu diễn mảng: • Nếu có nhị phân đầy đủ, ta đánh số cho nút theo thứ tự từ mức trở đi, hết mức đến mức khác từ trái sang phải nút mức • Trong trường hợp nhị phân khơng đầy đủ, ta thêm vào số nút giả để nhị phân đầy đủ, gán giá trị đặc biệt cho phần tử mảng T tương ứng với nút Hoặc dùng thêm mảng phụ để đánh dấu nút nút giả tự ta thêm vào • Gặp phải lãng phí nhớ phải thêm nhiều nút giả vào nhị phân đầy đủ Data Structure and Algorithm Biểu diễn cấu trúc liên kết Data Structure and Algorithm 10 Biểu diễn cấu trúc liên kết Data Structure and Algorithm 11 Biểu diễn cấu trúc liên kết Data Structure and Algorithm 12 Biểu diễn cấu trúc liên kết Data Structure and Algorithm 13 Biểu diễn cấu trúc liên kết Data Structure and Algorithm 14 Biểu diễn cấu trúc liên kết Data Structure and Algorithm 15 Binary tree – Cây nhị phân • Cây nhị phân suy biến (degenerate binary tree), nút khơng phải có nhánh • Trong nhị phân có số lượng nút nhị phân suy biến có chiều cao lớn nhất, nhị phân hồn chỉnh có chiều cao nhỏ • Số lượng tối đa nút mức i nhị phân 2i-1, tối thiểu (i ≥ 1) • Số lượng tối đa nút nhị phân có chiều cao h 2h-1, tối thiểu h (h ≥ 1) • Cây nhị phân hồn chỉnh có n nút chiều cao h = [lg(n)] + Data Structure and Algorithm 16 Duyệt nhị phân • A Preorder  Visit a node,  Visit left subtree,  Visit right subtree • Inorder  Visit left subtree,  Visit a node,  Visit right subtree • E B Postorder C D F G I H  Visit left subtree,  Visit right subtree  Visit a node Data Structure and Algorithm 17 Duyệt nhị phân Duyệt theo thứ tự trước: • giá trị nút liệt kê trước giá trị lưu hai nút Preorder • Visit a node, • Visit left subtree, • Visit right subtree A E B C D F G I H ABCDEFGHI Data Structure and Algorithm 18 Duyệt nhị phân Duyệt theo thứ tự giữa: • giá trị nút liệt kê sau giá trị lưu nút trái liệt kê trước giá trị lưu nút phải nút • Inorder  Visit left subtree,  Visit a node,  Visit right subtree A E B C D F G I H CBDAGFHEI Data Structure and Algorithm 19 Duyệt nhị phân Duyệt theo thứ tự sau: giá trị nút liệt kê sau giá trị lưu hai nút nút • Postorder  Visit left subtree,  Visit right subtree  Visit a node A E B C D F G I H CDBGHFIEA Data Structure and Algorithm 20 Discussion – Câu hỏi • https://sites.google.com/site/daonamanhedu/datastructure-algorithm Data Structure and Algorithm 21 ... Sedgewick, Addison-Wesley • Cấu trúc liệu giải thuật, Đinh Mạnh Tường • Giải thuật lập trình, Lê Minh Hoàng, Đại Học Sư Phạm, 2002 Data Structure and Algorithm Tree - Cây A E B C D G F I H Data... giả vào nhị phân đầy đủ Data Structure and Algorithm Biểu diễn cấu trúc liên kết Data Structure and Algorithm 10 Biểu diễn cấu trúc liên kết Data Structure and Algorithm 11 Biểu diễn cấu trúc. .. diễn cấu trúc liên kết Data Structure and Algorithm 13 Biểu diễn cấu trúc liên kết Data Structure and Algorithm 14 Biểu diễn cấu trúc liên kết Data Structure and Algorithm 15 Binary tree – Cây

Ngày đăng: 06/11/2017, 12:35

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN