Cây trong lý thuyết đồ thị

38 763 1
Cây trong lý thuyết đồ thị

Đ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

Cây trong lý thuyết đồ thị Thuật toán prim kruskal. Tìm Cây bao trùm ngắn nhất của đồ thị bằng thuật toán kruskal và thuật toán prim Tìm Cây bao trùm lớn của đồ thị bằng thuật toán kruskal và thuật toán prim

1 TOÁN RỜI RẠC ỨNG DỤNG TRONG TIN HỌC KHÁI NIỆM CƠ BẢN VỀ CÂY 2 Chương 2. Cây Một số khái niệm cơ bản  Cây  Định nghĩa:  Cây là một đồ thị vô hướng, liên thông và không có chu trình sơ cấp  Cây không có cạnh bội và khuyên  Cây là một đơn đồ thị  Ví dụ G 1 G 2 G G 3 G 4 3 Chương 2. Cây Một số khái niệm cơ bản  Rừng  Định nghĩa:  Rừng là một đồ thị vô hướng và không có chu trình  Rừng có thể có nhiều thành phần liên thông  Mỗi thành phần liên thông là một cây  Ví dụ G 4 Chương 2. Cây Một số khái niệm cơ bản  Định lý (Điều kiện đủ của cây)  Nếu mọi cặp đỉnh của một đồ thị vô hướng G luôn tồn tại một đường đi sơ cấp thì G là một cây  Chứng minh  SV tham khảo tài liệu 5 Chương 2. Cây Một số khái niệm cơ bản  Cây có gốc  Định nghĩa  Một cây với một đỉnh được chọn làm gốc  Định hướng các cạnh trên cây từ gốc đi ra  Ví dụ  Cùng một cây, nếu chọn gốc khác nhau thì cây có gốc thu được sẽ khác nhau a b d f g h a a b b c c c d d f f g gh h e e e 6 Chương 2. Cây Một số khái niệm cơ bản  Cây có gốc  Một số khái niệm  Cha  Anh em  Tổ tiên  Con cháu  Lá  Đỉnh trong  Cây con  Mức  Chiều cao 7 Chương 2. Cây Một số khái niệm cơ bản  Định lý Daisy Chain T là đồ thị có n đỉnh. Các mệnh đề tương đương: 1. T là một cây 2. T không có chu trình và có n-1 cạnh 3. T liên thông, mọi cạnh đều là cầu 4. Giữa hai đỉnh bất kỳ của T luôn tồn tại một đường đi sơ cấp duy nhất 5. T không có chu trình và T U {e} có chu trình 6. T liên thông và có n-1 cạnh 8 Chương 2. Cây Một số khái niệm cơ bản  Cây m-phân  Định nghĩa  Cây m-phân  Cây có gốc  Tất cả các đỉnh trong có không quá m con  Cây m-phân đầy đủ  Tất cả các đỉnh trong có không quá m con  m=2: Cây nhị phân 9 Chương 2. Cây Một số khái niệm cơ bản  Cây m-phân  Ví dụ  T 1 : Cây nhị phân đầy đủ  T 2 : Cây tam phân đầy đủ  T 3 : Cây tứ phân (không đầy đủ) T 1 T 2 T 3 10 Chương 2. Cây Một số tính chất của cây  Tính chất 1  Cây n đỉnh (n ≥ 2) có ít nhất 2 đỉnh treo  Tính chất 2  Cây m-phân đầy đủ với i đỉnh trong có n = m.i + 1  Tính chất 3  i = (n -1)/m  l = [(m - 1)n + 1] / m  l = (m - 1)i + 1  n = l + i [...]... Chương 2 Cây 21 Cây khung (Spanning Tree)  Định nghĩa  Cây khung của đơn đồ thị G     Đồ thị con của G Chứa tất cả các đỉnh của G Một đồ thị có thể có nhiều cây khung Ví dụ Chương 2 Cây 22 Cây khung (Spanning Tree)  Định lý   Một đơn đồ thị là liên thông khi và chỉ khi nó có cây khung Chứng minh Ñôn giaûn Chương 2 Cây 23 Cây khung (Spanning Tree)  Cây khung nhỏ nhất  Định nghĩa   Cây khung... của đồ thị G theo thứ tự tăng dần của trọng số Khởi tạo tập cạnh T = ∅ Với mỗi cạnh e lấy theo thứ tự:   Nếu các đầu mút của e không liên thông với nhau trong T thì  Thêm e vào T Cây khung nhỏ nhất là T Chương 2 Cây 32 Chương 2 Cây 33 Cây khung (Spanning Tree)  Cây khung nhỏ nhất  Ví dụ: Tìm cây khung nhỏ nhất của đồ thị sau 2 2 5 4 20 1 6 20 Chương 2 Cây 3 4 5 1 34 Cây khung (Spanning Tree)  Cây. .. nghĩa   Cây khung nhỏ nhất trong một đồ thị liên thông, có trọng số là một cây khung có tổng trọng số trên các cạnh là nhỏ nhất Định lý Cho G = (V, E), X ⊂ V  e là cạnh có trọng số nhỏ nhất nối giữa X và V\X ⇒ e là một cạnh trong cây khung nhỏ nhất  Chương 2 Cây 24 Cây khung (Spanning Tree)  Cây khung nhỏ nhất  Thuật toán Prim  Phân hoạch tập đỉnh    Tập các đỉnh thuộc cây đang xây dựng Tập các... khung (Spanning Tree)  Cây khung nhỏ nhất  Thuật toán Kruskal  Phân hoạch tập đỉnh    Tập các đỉnh liên thông với một đỉnh được chọn trong cây đang xét Tập các đỉnh còn lại Xây dựng cây    Chương 2 Cây Chọn 1 cạnh e = uv Nếu uv không liên thông với nhau trong cây đang xây dựng thì ghép cạnh này vào cây Thuật toán dừng khi được n-1 cạnh 31 Cây khung (Spanning Tree)  Cây khung nhỏ nhất  Thuật... các đỉnh còn lại Xây dựng cây    Chương 2 Cây Chọn một đỉnh chưa thuộc cây mà có khoảng cách gần cây đang xây dựng nhất Ghép vào cây cạnh ngắn nhất tìm được Thuật toán dừng khi được n-1 cạnh 25 Cây khung (Spanning Tree)  Cây khung nhỏ nhất  Thuật toán Prim   Cho T là tập đỉnh gồm một đỉnh x Trong khi T có ít hơn n đỉnh, thực hiện việc sau  Chương 2 Cây Tìm đỉnh u trong V \ T mà gần với T nhất...  Cây khung nhỏ nhất  Ví dụ: Tìm cây khung nhỏ nhất Chương 2 Cây 35 Cây khung (Spanning Tree)  Cây khung nhỏ nhất  So sánh Prim và Kruskal    Prim chọn cạnh có trọng số nhỏ nhất liên thuộc với một đỉnh đã thuộc cây Kruskal chọn cạnh có trọng số nhỏ nhất miễn là không tạo ra chu trình Thuật toán Prim hiệu quả hơn đối với các đồ thị dày (số cạnh nhiều) Chương 2 Cây 36 ... Chương 2 Cây DEBFCA 15 F Ký pháp nghịch đảo Ba Lan Cây biểu thức số học   Là cây nhị phân Mỗi nút trong biểu diễn cho toán tử 2 ngôi θ  Biểu diễn cho biểu thức E1 θ E2     Con trái biểu diễn cho biểu thức E1 Con phải biểu diễn cho biểu thức E2 Mỗi nút lá biểu diễn cho một toán hạng Chương 2 Cây 16 Ký pháp nghịch đảo Ba Lan Cây biểu thức số học   Ví dụ E = (2 + 3)*2 – (4 – 1)*(15/5) Chương 2 Cây. .. ∉ T  Chương 2 Cây 28 Cây khung (Spanning Tree)  Cây khung nhỏ nhất  Thuật toán Prim  Phương pháp lân cận gần nhất (Gán nhãn)    Chương 2 Cây Bước 1: Khởi tạo  VT = {s}; T = ∅;  ds = 0; dv = w(s, v) Bước 2: Tìm cạnh  Tìm u mà du = min {dv | v ∉ VT}  VT = VT ∪ {u}; T = T ∪ {uv}  Nếu VT ≡ V thì dừng Bước 3: Cập nhật nhãn  dv = min{ dv, w(u, v) } với V ∉ VT 29 Chương 2 Cây 30 Cây khung (Spanning...Phép duyệt Cây nhị phân Định nghĩa   Duyệt cây    Liệt kê các đỉnh theo một thứ tự xác định, mỗi đỉnh một lần Thường được đỉnh nghĩa đệ quy cho các cây con 3 phương pháp duyệt cây    Duyệt tiền tự (Pre-Oder) Duyệt trung tự (In-Oder) Duyệt hậu tự (Post-Oder) Chương 2 Cây 11 Phép duyệt Cây nhị phân Định nghĩa   Duyệt tiền tự 1 2 3 Duyệt nút gốc... tiền tự con trái Duyệt tiền tự con phải 1 2 Chương 2 Cây 3 12 Phép duyệt Cây nhị phân Định nghĩa   Duyệt trung tự 1 2 3 Duyệt trung tự con trái Duyệt nút gốc Duyệt trung tự con phải 2 1 Chương 2 Cây 3 13 Phép duyệt Cây nhị phân Định nghĩa   Duyệt hậu tự 1 2 3 Duyệt hậu tự con trái Duyệt hậu tự con phải Duyệt nút gốc 3 1 Chương 2 Cây 2 14 Phép duyệt Cây nhị phân Định nghĩa   Ví dụ A Duyệt tiền tự

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

Từ khóa liên quan

Mục lục

  • TOÁN RỜI RẠC ỨNG DỤNG TRONG TIN HỌC

  • Một số khái niệm cơ bản

  • Slide 3

  • Slide 4

  • Slide 5

  • Slide 6

  • Slide 7

  • Slide 8

  • Slide 9

  • Một số tính chất của cây

  • Phép duyệt Cây nhị phân

  • Slide 12

  • Slide 13

  • Slide 14

  • Slide 15

  • Ký pháp nghịch đảo Ba Lan

  • Slide 17

  • Slide 18

  • Slide 19

  • Slide 20

Tài liệu cùng người dùng

Tài liệu liên quan