1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Thiết kế và cài đặt thuật toán xây dựng cây khung theo chiều rộng BFS potx

3 713 4
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 3
Dung lượng 42 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Thiết kế và cài đặt thuật toán xây dựng cây khung theo chiều rộng BFS: 1.Thuật toán: 1.1 Tư tưởng của thuật toán: -Xuất phát từ đỉnh u, và khởi tạo tập các cạnh của cây khung F là rỗng

Trang 1

Thiết kế và cài đặt thuật toán xây dựng cây khung theo chiều rộng BFS:

1.Thuật toán:

1.1 Tư tưởng của thuật toán:

-Xuất phát từ đỉnh u, và khởi tạo tập các cạnh của cây khung F là rỗng.

-Sử dụng một hàng đợi để lưu các đỉnh sẽ được duyệt trong tương lai.Thực hiện các thuật toán như làm với phương pháp duyệt theo chiều rộng.

- Khi đỉnh v nào được đưa vào trong hàng đợi,thì ta bổ sung cạnh (u,v) vào tập F.

Thuật toán được mô tả như sau:

Procedure stree_BFS(u);

(*tìm kiếm theo chiều rộng áp dụng tìm tập cạnh của cây khung F của đồ thị vô hướng liên thông G cho bởi danh sách kề*) Begin

Queue := Ø; Queue ← u;

Chuaxet[u]:=false;

While Queue ≠ Ø do

Begin

v← Queue ;

For W ke(v) do

If chuaxet[v] then

Begin

Queue ← v;

Chuaxet[u]:=false;

F:=F U (u,v);

End;

End;

End;

(* main program*) ;

BEGIN

For u thuoc V do

Chuaxet[u]:=true;

(*F la tap canh cua cay khung *)

F:= Ø;

(* root la mot dinh tuy y cua do thi*)

Stree_BFS(root);

END.

(độ phức tạp của thuật toán này : O( m +n ))

Ví dụ: Cho đồ thị sau:

Tìm cây khung của đồ thị sử dụng phương pháp tìm kiếm theo chiều rộng

Trang 2

Bài làm :

- Đưa đỉnh 1 vào hàng đợi, khởi tạo tập F là rỗng Bắt đầu quá trình lặp

- Sau khi lấy đỉnh 1 từ hàng đợi, các đỉnh {2,3} đưa vào hàng đợi , dẫn đến các cạnh (1,2) và (1,3) sẽ đưa vào tập F

- Lấy đỉnh 2 từ hàng đợi, các đỉnh {4,5} đưa vào hàng đợi, dẫn đến các cạnh (2,4) và (2,5) được đưa vào tập F

- Lấy đỉnh 3 từ hàng đợi, các đỉnh {6,7} đưa vào hàng đợi, dẫn đến các cạnh (3,6) và (3,7) được đưa vào tập F

- Lấy 4 từ hàng đợi, đỉnh {8} được đưa vào hàng đợi, và cạnh (4,8) được đưa vào tập F

- Lấy 5 từ hàng đợi, đỉnh {9} được đưa vào hàng đợi, và cạnh (5,9) được đưa vào tập F

- Lấy 6 từ hàng đợi, đỉnh {10,11} được đưa vào hàng đợi, các cạnh (6,10) và (6,11) được đưa vào tập F

- Lấy các đỉnh 7, 8, 9, 10, 11 ra từ hàng đợi mà không bổ sung thêm cạnh nào vào tập F

Như vậy cây khung của đồ thị thu được từ thuật toán BFS bao gồm các cạnh sau:

3

4

2

8

6

9

Trang 3

3

4

2

8

6

9

Ngày đăng: 08/07/2014, 02:21

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w