Giải bài toán có túi bằng phương pháp vét cạn
Tuần 1: 1. Khái niệm thuật toán - Định nghĩa. - Các tính chất. - Ví dụ minh họa: Tìm phần tử bé nhất trong dãy có n số cho trước. 1. Biểu diễn thuật toán - Sơ đồ khối. Ký hiệu. Ví dụ minh họa: Tìm phần tử bé nhất trong dãy có n số cho trước. - Giả mã. Yêu cầu. Ví dụ minh họa: Tìm phần tử có giá trị bằng b trong dãy có n số cho trước (làm rõ là tìm tất cả, phần tử đầu tiên, cuối cùng, hay phần tử bất kỳ). - Chất lượng biểu diễn thuật toán. 1. Tính đúng đắn và hiệu quả của thuật toán - Tính đúng đắn: Phương pháp lý thuyết, phương pháp thực nghiệm. - Tính hiệu quả: Phương pháp lý thuyết và phương pháp thực nghiệm. Bài tập: 1) Thuật toán sinh dãy nhị phân. 2) Viết chương trình cho bài toán ba lô dựa trên duyệt tất cả các phương án. 3) Tìm số m lớn nhất có tính chất ở cơ số 16 có tổng các chữ số bằng n cho trước. Thuật toán tốt và thuật toán kém. 4) Phân biệt chính xác input, output của bài toán và trong mô tả thuật toán. Thuật toán giải phương trình, hệ phương trình. Câu hỏi ôn tập và bài tập tự làm:
Chương 2. Một số kỹ thuật thiết kế thuật toán (tuần 3 - 7)Tuần 3: 2. Kỹ thuật thiết kế tuần tự - Ý tưởng - Ví dụ: nhân một số nguyên lớn với số có một chữ số, tìm xâu con dài nhất các ký tự liên tiếp khác nhau, thao tác với xâu kí tự. 2. Kỹ thuật thiết kế theo cấu trúc - Ý tưởng. - Ví dụ: Tính tích của hai số nguyên lớn. Bài tập:
Tuần 6: 2. Kỹ thuật chia để trị - Ý tưởng - Ví dụ minh họa: 1. Tìm min, max của dãy số 2. Hòa nhập đơn giản. Định lý về chi phí tính toán. 3. Sắp xếp phân đoạn. 4. Tìm hai phần tử trong dãy số cho trước có tổng bằng K cho trước. Bài tập:
Câu hỏi ôn tập và bài tập tự làm:
Chương 3. Sắp xếp và tìm kiếm (tuần 8-10)Tuần 8:
Tuần 9:
Tuần 10:
Câu hỏi ôn tập và bài tập tự làm:
Tuần 12: Bài toán ba lô (knapsack) 0-1. 4. Đánh giá thuật toán 1. So sánh lý thuyết các thuật toán: vét cạn, gần đúng và quy hoạch động 2. Ví dụ minh họa 2: T = 12, a = (2, 7, 1, 5, 4), c = (2, 5, 2, 4, 10) 3. Cài đặt chương trình 4. So sánh thực nghiệm các thuật toán: vét cạn, gần đúng và quy hoạch động 4. Bài toán dãy con chung dài nhất 1. Phát biểu bài toán 2. Trạng thái khởi tạo, quyết định ban đầu 3. Chiến lược tối ưu 4. Chi tiết thuật toán 5. Tính đúng đắn của thuật toán Bài tập :
Câu hỏi ôn tập và bài tập tự làm:
Tuần 13:
Xét một số bài toán ứng dụng: Sắp xếp nhiều cuộc họp vào một phòng họp, sắp xếp các cuộc họp sao cho tốn ít phòng nhất (kết hợp quy hoạch động và tham lam để giải gần đúng). |