Giải thuật chia để trị (divide and conquer)
Giải thuật chia để trị (Divide and Conquer) là gì?
Phương pháp chia để trị (Divide and Conquer) là một phương pháp quan trọng trong việc thiết kế các giải thuật. Ý tưởng của phương pháp này khá đơn giản và rất dễ hiểu: Khi cần giải quyết một bài toán, ta sẽ tiến hành chia bài toán đó thành các bài toán con nhỏ hơn. Tiếp tục chia cho đến khi các bài toán nhỏ này không thể chia thêm nữa, khi đó ta sẽ giải quyết các bài toán nhỏ nhất này và cuối cùng kết hợp giải pháp của tất cả các bài toán nhỏ để tìm ra giải pháp của bài toán ban đầu.

Nói chung, bạn có thể hiểu giải thuật chia để trị (Divide and Conquer) qua 3 tiến trình sau:
Tiến trình 1: Chia nhỏ (Divide/Break)
Trong bước này, chúng ta chia bài toán ban đầu thành các bài toán con. Mỗi bài toán con nên là một phần của bài toán ban đầu. Nói chung, bước này sử dụng phương pháp đệ qui để chia nhỏ các bài toán cho đến khi không thể chia thêm nữa. Khi đó, các bài toán con được gọi là "atomic – nguyên tử", nhưng chúng vẫn biểu diễn một phần nào đó của bài toán ban đầu.
Tiến trình 2: Giải bài toán con (Conquer/Solve)
Trong bước này, các bài toán con được giải.
Tiến trình 3: Kết hợp lời giải (Merge/Combine)
Sau khi các bài toán con đã được giải, trong bước này chúng ta sẽ kết hợp chúng một cách đệ qui để tìm ra giải pháp cho bài toán ban đầu.
Hạn chế của giải thuật chia để trị (Devide and Conquer)
Giải thuật chia để trị tồn tại hai hạn chế, đó là:
Làm thế nào để chia tách bài toán một cách hợp lý thành các bài toán con, bởi vì nếu các bài toán con được giải quyết bằng các thuật toán khác nhau thì sẽ rất phức tạp.
Việc kết hợp lời giải các bài toán con được thực hiện như thế nào.
Ví dụ giải thuật chia để trị
Dưới đây là một số giải thuật được xây dựng dựa trên phương pháp chia để trị (Divide and Conquer):
- Giải thuật sắp xếp trộn (Merge Sort)
- Giải thuật sắp xếp nhanh (Quick Sort)
- Giải thuật tìm kiếm nhị phân (Binary Search)
- Nhân ma trận của Strassen
Theo Tutorialspoint
Bài trước: Giải thuật tham lam (Greedy Algorithm)
Bạn nên đọc
-
Công thức tính diện tích xung quanh hình nón, diện tích toàn phần hình nón, thể tích hình nón, V nón
-
Cách tính diện tích hình tròn và chu vi hình tròn
-
Công thức tính thể tích hình chóp cụt, diện tích xung quanh và toàn phần của hình chóp cụt
-
Công thức tính diện tích hình quạt tròn
-
Công thức tính diện tích hình thang cân, chu vi hình thang cân
-
Công thức tính diện tích xung quanh hình nón cụt, diện tích toàn phần hình nón cụt, thể tích hình nón cụt
Theo Nghị định 147/2024/ND-CP, bạn cần xác thực tài khoản trước khi sử dụng tính năng này. Chúng tôi sẽ gửi mã xác thực qua SMS hoặc Zalo tới số điện thoại mà bạn nhập dưới đây:
- Code NgầuThích · Phản hồi · 1 · 17/08/20
- Code NgầuThích · Phản hồi · 0 · 17/08/20
Cũ vẫn chất
-

Thơ về mùa hè hay, gợi nhiều ký ức
2 ngày -

40+ câu nói ‘xoắn lưỡi’ tiếng Việt, Anh, thách bạn có thể nói nhanh liên tiếp 5 lần mà vẫn trôi chảy
2 ngày -

Lịch phát sóng VTV1 hôm nay 05/02/2026
2 ngày -

Cách fake tin nhắn iPhone, chế tin nhắn Messenger
2 ngày -

Danh sách DNS tốt, nhanh nhất của Google, VNPT, FPT, Viettel, Singapore
2 ngày -

Code Phong Ma Đạo Sĩ mới nhất và cách nhập code
2 ngày -

Những câu nói, status nói về những người bạn đểu cực thâm, cực thấm
2 ngày 3 -

5 phần mềm VPN tốt nhất hiện nay có bản dùng thử và chính sách hoàn tiền miễn phí
2 ngày -

Hướng dẫn tải Minecraft miễn phí trên iPhone
2 ngày 3 -

6 cách tra cứu điểm thi vào lớp 10 Hà Nội 2026
2 ngày
Học IT
Microsoft Word 2013
Microsoft Word 2007
Microsoft Excel 2019
Microsoft Excel 2016
Microsoft PowerPoint 2019
Google Sheets
Lập trình Scratch
Bootstrap
Hướng dẫn
Ô tô, Xe máy