Tại sao thuật toán của Prim hoạt động?
Tại sao thuật toán của Prim hoạt động?

Video: Tại sao thuật toán của Prim hoạt động?

Video: Tại sao thuật toán của Prim hoạt động?
Video: Prim (cách thuật toán hoạt động + hiểu giả mã) 2024, Tháng tư
Anonim

Trong khoa học máy tính, Prim's (còn được gọi là Jarník's) thuật toán là một kẻ tham lam thuật toán tìm một cây bao trùm tối thiểu cho một đồ thị vô hướng có trọng số. Điều này có nghĩa là nó tìm thấy một tập hợp con của các cạnh tạo thành một cây bao gồm mọi đỉnh, trong đó tổng trọng lượng của tất cả các cạnh trong cây được giảm thiểu.

Về mặt này, tại sao Prims lại tốt hơn Kruskal?

Của Kruskal Thuật toán: thực hiện tốt hơn trong các tình huống điển hình (đồ thị thưa thớt) vì nó sử dụng cấu trúc dữ liệu đơn giản hơn. Prim's Thuật toán: nhanh hơn đáng kể trong giới hạn khi bạn có một đồ thị thực sự dày đặc với nhiều cạnh hơn hơn các đỉnh.

thuật toán của Prim có tối ưu không? Thuật toán của Prim là một kẻ tham lam thuật toán để tìm một cây bao trùm tối thiểu trên một đồ thị vô hướng có trọng số bằng cách sử dụng cách tiếp cận tham lam. Trong trường hợp Thuật toán của Prim , chúng tôi liên tục chọn đỉnh có khoảng cách từ đỉnh nguồn được giảm thiểu, tức là hiện tại cục bộ tối ưu sự lựa chọn.

Xem xét điều này, thuật toán của Prim có thể có chu kỳ không?

Thuật toán của Prim . Thuật toán của Prim rõ ràng tạo ra một cây bao trùm, bởi vì không chu kỳ có thể được giới thiệu bằng cách thêm các cạnh giữa các đỉnh cây và không phải là cây.

Thuật toán nào hiệu quả hơn trong việc xây dựng cây bao trùm tối thiểu của một đồ thị nhất định Thuật toán của Prim hoặc thuật toán của Kruskal và tại sao?

Thuật toán Kruskal phát triển một giải pháp từ cạnh rẻ nhất bằng cách thêm cạnh rẻ nhất tiếp theo vào cây / rừng. Thuật toán của Prim nhanh hơn cho dày đặc đồ thị . Thuật toán Kruskal nhanh hơn cho thưa thớt đồ thị.

Đề xuất: