12 Kết quả ví dụ thuật toán Kruskal

Một phần của tài liệu Giữa kì phần tích thiết kế yêu cầu phân tích hệ thống cửa hàng bán xe máy của một công ty (Trang 37 - 39)

Năm 1959, Edsgar Dijkstra đã phát triển một thuật toán để tìm đường đi ngắn nhất giữa đ§nh bắt đầu (nguồn) và đ§nh kết thúc (đích) trong một đồ thƒ có trọng số trong đó tất cả các trọng số đều dương.

Tương tự với các thuật toán của Prim, nó hoạt động ra bên ngoài từ nguồn a, thêm các đ§nh và cạnh lần lượt để tạo ra một cây đường đi ngắn nhất T. Nó khác với thuật toán của Prim ở cách nó chọn đ§nh tiếp theo để thêm vào, đảm bảo rằng đối với m¨i đ§nh được thêm vào đ§nh v, độ dài của đường đi ngắn nhất từ a đến v đã được xác đƒnh.

Suy luận sau thuật toán Dijkstra:

- Kết quả các đ§nh theo thứ tự tăng dần khoảng cách của chúng từ đ§nh nguồn. - Xây dựng đường đi ngắn nhất từng cạnh; ở m¨i bước thêm một cạnh mới, tương

ứng với việc xây dựng đường đi ngắn nhất đến đ§nh mới hiện tại. Đầu vào:

- Đồ thƒ G là một đồ thƒ đơn giản liên thông với trọng số dương cho mọi cạnh. - là một số lớn hơn tổng trọng số của tất cả các cạnh trong đồ thƒ G.

- w (u, v) là trọng số của cạnh {u, v}. - a là đ§nh nguồn.

- z là đ§nh đích. Thuật toán Dijkstra:

- Khởi tạo T là đồ thƒ có đ§nh a và không có cạnh. Gọi V (T) là tập các đ§nh của T và gọi E (T) là tập các cạnh của T.

- Cho L (a) = 0, và với tất cả các đ§nh trong G ngoại trừ a, cho L (u) = . Số L (x) được gọi là nhãn của x.

- Khởi tạo v bằng a và F là {a}. Ký hiệu v được sử dụng để biểu thƒ đ§nh được thêm gần đây nhất vào T. Gọi Adj (x) là tập các đ§nh kề với đ§nh x.

o Lặp đối với m¨i đ§nh u Adj(v) và V(T):  Nếu L(v) + w (v, u) <L(u) thì:

 L(u) = L (v) + w (v, u)  D (u) = v

- Tìm một đ§nh x trong F có nhãn nhỏ nhất. Thêm đ§nh x vào V (T), và thêm cạnh {D (x), x} vào E (T) gán v = x.

Đầu ra: L (z) đây là độ dài của đường đi ngắn nhất từ a đến z.

Ví dụ: Hiển thƒ các bước trong việc thực hiện thuật toán đường đi ngắn nhất của Dijkstra cho biểu đồ được hiển thƒ bên dưới với đ§nh bắt đầu a và đ§nh kết thúc z.

Một phần của tài liệu Giữa kì phần tích thiết kế yêu cầu phân tích hệ thống cửa hàng bán xe máy của một công ty (Trang 37 - 39)

Tải bản đầy đủ (PDF)

(103 trang)