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

MỘT số ỨNG DỤNG của cây BAO TRÙM

16 205 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 16
Dung lượng 90 KB

Nội dung

11.4 MỘT SỐ ỨNG DỤNG CỦA CÂY BAO TRÙM Kiểm tra tính liên thông đồ thị: Đồ thị liên thông ⇔ có bao trùm Xây dựng hệ sở chu trình Giả sử đồ thị liên thông G = (V, E) với n đỉnh m cạnh 11.4 MỘT SỐ ỨNG DỤNG CỦA CÂY BAO TRÙM (tiếp) Τηựχ ηιệν ηαι βướχ: Ξψ δựνγ χψ βαο τρµ Τ χủα Γ Γιả σử τρονγ θυ〈 τρνη ξψ δựνγ χψ βαο τρµ Τ τα đ βỏ đι χ〈χ χạνη ε1, ε2, , εµ – ν + Ξψ δựνγ ηệ χηυ τρνη χơ σở: Λầν λượτ τηµ ϖ◊ο χψ Τ χ〈χ χ νη ει, κηι đ⌠ σẽ ξυấτ ηιệν χηυ τρνη αι − đψ χũνγ λ◊ χηυ τρνη χủα đồ τηị Γ Σαυ ⌠ λ ι ξο〈 χ νη ει ϖ◊ τηµ χ νη ει+1 ϖ◊ο Χυốι χνγ τα νηậν đượχ χ〈χ χηυ τρνη τươνγ ứνγ λ◊ α1, α2, , αµ – ν + 11.4 MỘT SỐ ỨNG DỤNG CỦA CÂY BAO TRÙM (tiếp) Ηệ χηυ τρνη ν◊ψ độχ λậπ ϖ: ∀ ι ≠ ϕ τη αι χηứα ει νηưνγ κηνγ χηứα εϕ, χ∫ν αϕ χη α εϕ νη νγ κηνγ χη α ει Σố χ〈χ χηυ τρνη ν◊ψ λ◊ µ − ν +1 = µ − ν + π = χ(Γ) = σ χ〈χ χηυ τρνη độχ λậπ χựχ đạι  ςậψ ηệ χηυ τρνη τµ đượχ λ◊ µộτ χơ σở χủα χ〈χ χηυ τρνη τρονγ đồ τηị Γ VÍ DỤ 11.5 Ξτ đồ τηị ϖ ηướνγ: b c G= a d e Hình 11.7 Đồ thị cạnh bỏ ν = 5, µ = 8, π = ςậψ χ(Γ) = 4 VÍ DỤ 11.5 (tiếp) Μộτ χψ βαο τρµ Τ χủα Γ λ◊: b c a Τα νηậν đượχ µộτ ηệ χηυ τρνη χeơ σở: d α1 = [a, b, d] α3 = [a, b, c, d] α2 = [a, b, e, d] α4 = [a, b, c, e, d] 11.5 CÂY BAO TRÙM NHỎ NHẤT  Β◊ι το〈ν: Χηο τη ϖ η νγ Γ λιν τηνγ ϖ ι τậπ χạνη Ε ϖ◊ η◊µ τρọνγ σố χ : Ε → Ν Τµ χψ βαο τρµ Τ χủα Γ σαο χηο τổνγ τρọνγ σố χủα χ〈χ χạνη χủα Τ đạτ γι〈 τρị νηỏ νηấτ  Μ τ σ τηυ τ το〈ν τµ χψ βαο τρµ νη νη τ: - Thuật toán Kruskal - Thuật toán Prim 11.6 THUẬT TOÁN KRUSKAL Τηυ ậτ το〈ν: Χη ν χ νη χ⌠ τρ νγ σ β νη τ, κ ηι υ λ◊ ε1 ϖ◊ đặτ Ω := {ε1} Γιả σử đ χηọν đượχ Ω = {ε1, ε2, , ει} Χη ν ει+1 λ◊ χ νη χ⌠ τρ νγ σ β νη τ τρονγ σ χ〈χ χ νη χ∫ν λ ι τρονγ Ε ∴ Ω σαο χηο {ε1, ε2, , ει, ει+1} κηνγ χηứα χηυ τρνη Β συνγ: Ω := Ω ∪ {ει+1} Λặπ λạι χ〈χ βướχ – χηừνγ ν◊ο χ∫ν χ⌠ τηể 11.6 THUẬT TOÁN KRUSKAL (tiếp)  Địνη λ 11.4 : Τ π χ〈χ χ νη Ω τµ χ τηεο τηυ τ το〈ν Κρυσκαλ τ ο νν χψ βαο τρµ νη νη τ χ α τη Γ  Τηυ ậτ το〈ν Κρυσκαλ χηι τι ếτ procedure Kruskal ; begin W := ∅ ; Z := E ; 11.6 THUẬT TOÁN KRUSKAL (tiếp) ωηιλε (|Ω| < ν −1) ανδ (Ζ ≠ ∅) δο begin chọn cạnh e có trọng số bé Z ; Z := Z \ {e} ; if W ∪ {e} không chứa chu trình then W := W ∪ {e} end ; 10 if |W| < n -1 then writeln(″Đồ thị không liên thông″) 11 end ; VÍ DỤ 11.6 Đồ τηị χ⌠ τρọνγ σố ϖ◊ χψ βαο τρµ νηỏ νηấτ: 1 1 6 Hình 11.10 Đồ thị trọng số bao trùm nhỏ 10 11.7 THUẬT TOÁN PRIM  Τηυ τ το〈ν Πριµ Prim cải tiến thuật toán Kruskal sau: vòng lặp ta chọn cạnh có trọng số bé số cạnh kề với cạnh chọn mà không tạo nên chu trình 11 11.7 THUẬT TOÁN PRIM (tiếp) Τηυ τ το〈ν Πριµ χ γ ι λ◊ πη νγ πη〈π λν χậν γầν νηấτ: βắτ đầυ τừ µộτ đỉ νη ν◊ο đ⌠ α χủα đồ τηị Γ τα νốι ν⌠ ϖớι đỉ νη “γầν” νηấτ, χηẳνγ ηạν β Νγηĩα λ◊, χạνη (α, β) χ χη ν χ⌠ τρọνγ σố β νηấτ Τιếπ τηεο, τρονγ σố χ〈χ χạνη κề ϖớι đỉ νη α ηο χ νη β τα χη ν χ νη χ⌠ τρ νγ σ β νη τ µ◊ κηνγ τ ο νν χηυ τρνη ϖ ι χ νη (α, β) Χạνη ν◊ψ δẫν đếν đỉνη τη βα χ Τιếπ τụχ θυ〈 τρνη ν◊ψ χηο đếν κηι νηậν đượχ χψ γ µ ν νη ϖ◊ ν−1 χ νη ⌠ χηνη λ◊ χψ βαο τρµ νη νη τ 12 11.7 THUẬT TOÁN PRIM (tiếp) προχεδυρε Πριµ ; begin W := {cạnh có trọng số bé }; for i := to n - begin e := cạnh có trọng số bé kề với cạnh W ghép vào W không tạo nên chu trình ; W := W ∪ {e} end end ; 13 CÂY BAO TRÙM NHỎ NHẤT (tiếp)  Đị νη λ 11.5 Trong đồ thị vô hướng có trọng số đôi khác nhau, bao trùm nhỏ tồn Chứng minh: Vì vòng lặp có cạnh chọn 14 11.8 CÂY BAO TRÙM LỚN NHẤT  Τρονγ χ〈χ τηυậτ το〈ν Κρυσκαλ ϖ◊ Πριµ τα κηνγ ρ◊νγ βυộχ ϖề δấυ χủα τρọνγ σố, νν χ⌠ τηể 〈π δụνγ χηο đồ τηị ϖ ηướνγ ϖớι τρọνγ σố τρν χ〈χ χạνη χ⌠ χνγ δấυ τυỳ  15 11.8 CÂY BAO TRÙM LỚN NHẤT (tiếp)  Để τµ χψ βαο τρµ λớν νηấτ τα χ⌠ ηαι χ〈χη: Đổi thành dấu - cho trọng số cạnh áp dụng hai thuật toán trình bày để tìm bao trùm nhỏ Sau đổi dấu + trở lại, ta bao trùm lớn Sửa đổi thuật toán: bước “chọn cạnh có trọng số bé “ thay “chọn cạnh có trọng số lớn “ bước khác giữ nguyên Khi thuật toán kết thúc, ta nhận bao trùm lớn 16 [...]... trọng số bé nhất }; 4 for i := 1 to n - 2 do 5 begin 6 e := cạnh có trọng số bé nhất kề với cạnh trong W và nếu ghép nó vào W thì không tạo nên chu trình ; 7 W := W ∪ {e} 8 end 9 end ; 13 CÂY BAO TRÙM NHỎ NHẤT (tiếp)  Đị νη λ 11.5 Trong đồ thị vô hướng có trọng số đôi một khác nhau, cây bao trùm nhỏ nhất tồn tại và duy nhất Chứng minh: Vì trong vòng lặp chỉ có duy nhất một cạnh được chọn 14 11.8 CÂY BAO. .. 11.8 CÂY BAO TRÙM LỚN NHẤT  Τρονγ χ〈χ τηυậτ το〈ν Κρυσκαλ ϖ◊ Πριµ τα κηνγ ρ◊νγ βυộχ ϖề δấυ χủα τρọνγ σố, νν χ⌠ τηể 〈π δụνγ χηο đồ τηị ϖ ηướνγ ϖớι τρọνγ σố τρν χ〈χ χạνη χ⌠ χνγ δấυ τυỳ  15 11.8 CÂY BAO TRÙM LỚN NHẤT (tiếp)  Để τµ χψ βαο τρµ λớν νηấτ τα χ⌠ ηαι χ〈χη: 1 Đổi thành dấu - cho các trọng số trên các cạnh áp dụng một trong hai thuật toán đã trình bày ở trên để tìm cây bao trùm nhỏ nhất... toán đã trình bày ở trên để tìm cây bao trùm nhỏ nhất Sau đó đổi dấu + trở lại, ta sẽ được cây bao trùm lớn nhất 2 Sửa đổi trong các thuật toán: bước “chọn cạnh có trọng số bé nhất “ được thay bằng “chọn cạnh có trọng số lớn nhất “ còn các bước khác thì giữ nguyên Khi thuật toán kết thúc, ta sẽ nhận được cây bao trùm lớn nhất 16 ...11.7 THUẬT TOÁN PRIM  Τηυ τ το〈ν Πριµ Prim đã cải tiến thuật toán Kruskal như sau: ở mỗi vòng lặp ta chọn cạnh có trọng số bé nhất trong số các cạnh kề với các cạnh đã chọn mà không tạo nên chu trình 11 11.7 THUẬT TOÁN PRIM (tiếp) Τηυ τ το〈ν Πριµ χ γ ι λ◊ πη νγ πη〈π λν χậν γầν νηấτ: βắτ đầυ τừ µộτ đỉ νη ν◊ο đ⌠ α χủα đồ τηị Γ τα ...11.4 MỘT SỐ ỨNG DỤNG CỦA CÂY BAO TRÙM (tiếp) Τηựχ ηιệν ηαι βướχ: Ξψ δựνγ χψ βαο τρµ Τ χủα Γ Γιả σử τρονγ θυ〈 τρνη... ει+1 ϖ◊ο Χυốι χνγ τα νηậν đượχ χ〈χ χηυ τρνη τươνγ ứνγ λ◊ α1, α2, , αµ – ν + 11.4 MỘT SỐ ỨNG DỤNG CỦA CÂY BAO TRÙM (tiếp) Ηệ χηυ τρνη ν◊ψ độχ λậπ ϖ: ∀ ι ≠ ϕ τη αι χηứα ει νηưνγ κηνγ χηứα εϕ,... 11.8 CÂY BAO TRÙM LỚN NHẤT (tiếp)  Để τµ χψ βαο τρµ λớν νηấτ τα χ⌠ ηαι χ〈χη: Đổi thành dấu - cho trọng số cạnh áp dụng hai thuật toán trình bày để tìm bao trùm nhỏ Sau đổi dấu + trở lại, ta bao

Ngày đăng: 29/12/2015, 22:49

TỪ KHÓA LIÊN QUAN

w