Tải Cấu trúc dữ liệu và giải thuật (Data Structure and Algorithms): Giải thuật tham lam (Greedy Algorithm) - Giới thiệu về thuật toán tham lam

2 19 0
Tải Cấu trúc dữ liệu và giải thuật (Data Structure and Algorithms): Giải thuật tham lam (Greedy Algorithm) - Giới thiệu về thuật toán tham lam

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

Thông tin tài liệu

Rất nhiều giải thuật nổi tiếng được thiết kế dựa trên ý tưởng tham lam, ví dụ như giải thuật cây khung nhỏ nhất của Dijkstra, giải thuật cây khung nhỏ nhất của Kruskal, … Giải thuật tham[r]

(1)

Giải thuật tham lam (Greedy Algorithm) Giải thuật tham lam ?

Tham lam (hay tham ăn) phương pháp phổ biến để thiết kế giải thuật Nếu bạn đọc truyện dân gian có câu chuyện này: mâm cỗ có nhiều ăn, ngon ta ăn trước, ăn hết ta chuyển sang ngon thứ hai, chuyển tiếp sang thứ ba, …

Rất nhiều giải thuật tiếng thiết kế dựa ý tưởng tham lam, ví dụ giải thuật khung nhỏ Dijkstra, giải thuật khung nhỏ Kruskal, … Giải thuật tham lam (Greedy Algorithm) giải thuật tối ưu hóa tổ hợp Giải thuật tìm kiếm, lựa chọn giải pháp tối ưu địa phương bước với hi vọng tìm giải pháp tối ưu toàn cục

Giải thuật tham lam lựa chọn giải pháp cho tốt thời điểm sau giải tốn nảy sinh từ việc thực lựa chọn Lựa chọn giải thuật tham lam phụ thuộc vào lựa chọn trước Việc định sớm thay đổi hướng giải thuật với việc không xét lại định cũ dẫn đến kết giải thuật không tối ưu để tìm giải pháp tồn cục

Bạn theo dõi toán đơn giản để thấy cách thực giải thuật tham lam lại nói giải thuật khơng tối ưu

Bài toán đếm số đồng tiền

Yêu cầu lựa chọn số lượng đồng tiền nhỏ cho tổng mệnh giá đồng tiền với lượng tiền cho trước

Nếu tiền đồng có mệnh giá 1, 2, 5, 10 xu lượng tiền cho trước 18 xu giải thuật tham lam thực sau:

 Bước 1: Chọn đồng 10 xu, cịn 18 – 10 = xu  Bước 2: Chọn đồng xu, cịn xu

 Bước 3: Chọn đồng xu, lại xu

 Bước 4: Cuối chọn đồng xu giải xong toán

Bạn thấy cách làm ổn, số lượng đồng tiền cần phải lựa chọn đồng tiền Nhưng thay đổi tốn chút hướng tiếp cận khơng đem lại kết tối ưu

(2)

thì số đồng tiền cần chọn nhiều Với giải thuật tham lam thì: 10 + + +1 + + 1, tổng cộng đồng tiền Trong toán xử lý việc chọn đồng tiền (7 + +1)

Do kết luận rằng, giải thuật tham lam tìm kiếm giải pháp tơi ưu bước lại thất bại việc tìm giải pháp tối ưu tồn cục

Ví dụ áp dụng giải thuật tham lam

Có nhiều giải thuật tiếng thiết kế dựa tư tưởng giải thuật tham lam Dưới số giải thuật này:

 Bài toán hành trình người bán hàng  Giải thuật khung nhỏ Prim  Giải thuật khung nhỏ Kruskal  Giải thuật khung nhỏ Dijkstra  Bài tốn xếp lịch cơng việc

Ngày đăng: 29/12/2020, 16:09

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

Tài liệu liên quan