tailieunhanh - Bài giảng cơ sở lập trình nâng cao - Chương 10
Định nghĩa Quy hoạch động: Quy hoạch động là phương pháp giải quyết các bài toán tối ưu bằng cách tạo ra một chuỗi các quyết định xác định. Với mỗi quyết định, các bài toán con được giải quyết theo cùng cách sao cho lời giải tối ưu của bài toán ban đầu có thể được tìm thấy từ các lời giải tối ưu của các bài toán con. | TỐI ƯU HÓA CHƯƠNG TRÌNH Chương 10 1 Tối ưu hóa chương trình 2 Đặc trưng trong chương trình cần tối ưu Tối ưu hóa thời gian thực hiện chương trình Tối ưu hóa không gian lưu trữ dữ liệu 2 Loại tối ưu Tối ưu chương trình không làm thay đổi thuật toán (Chỉnh sửa mã chương trình) Tối ưu chương trình làm thay đổi thuật toán 2 TỐI ƯU HÓA THỜI GIAN CHỈNH SỬA MÃ CHƯƠNG TRÌNH 3 Chỉnh sửa mã chương trình Các cách chỉnh sửa mã chương trình Quy tắc Vòng lặp Quy tắc Logic Quy tắc Hàm Quy tắc Biểu thức 4 QUY TẮC VÒNG LẶP Tốu ưu câu lệnh lặp Quy tắc vòng lặp 1: Đưa code ra ngoài vòng lặp Đưa các tính toán không phụ thuộc vào chỉ số lặp ra khỏi vòng lặp Các biểu thức tính toán nếu đều được tính toán giống nhau qua các lần lặp thì nên được để ngoài vòng lặp Chú ý những biểu thức chứa những phép toán tốn nhiều thời gian: *, /, hàm mũ, lấy căn, . 6 Tốu ưu câu lệnh lặp for (i=0; i value) { found = 0; break; } } 11 Tốu ưu câu lệnh lặp Cải tiến 12 Tốu ưu câu lệnh lặp Quy tắc vòng lặp 3: Tháo bỏ vòng lặp – Do chi phí thay đổi chỉ số lớn: Trong vòng lặp ngắn hay thân vòng lặp ít code | TỐI ƯU HÓA CHƯƠNG TRÌNH Chương 10 1 Tối ưu hóa chương trình 2 Đặc trưng trong chương trình cần tối ưu Tối ưu hóa thời gian thực hiện chương trình Tối ưu hóa không gian lưu trữ dữ liệu 2 Loại tối ưu Tối ưu chương trình không làm thay đổi thuật toán (Chỉnh sửa mã chương trình) Tối ưu chương trình làm thay đổi thuật toán 2 TỐI ƯU HÓA THỜI GIAN CHỈNH SỬA MÃ CHƯƠNG TRÌNH 3 Chỉnh sửa mã chương trình Các cách chỉnh sửa mã chương trình Quy tắc Vòng lặp Quy tắc Logic Quy tắc Hàm Quy tắc Biểu thức 4 QUY TẮC VÒNG LẶP Tốu ưu câu lệnh lặp Quy tắc vòng lặp 1: Đưa code ra ngoài vòng lặp Đưa các tính toán không phụ thuộc vào chỉ số lặp ra khỏi vòng lặp Các biểu thức tính toán nếu đều được tính toán giống nhau qua các lần lặp thì nên được để ngoài vòng lặp Chú ý những biểu thức chứa những phép toán tốn nhiều thời gian: *, /, hàm mũ, lấy căn, . 6 Tốu ưu câu lệnh lặp for (i=0; i
đang nạp các trang xem trước