Chương 7 Thuật toán quy hoạch động và áp dụng cùng nắm kiến thức trong chương này thông qua việc tìm hiểu các nội dung sau: Các bài toán con chung lồng nhau và giải thuật quy hoạch động, giải thuật quy hoạch động giải bài toán cái túi, giải thuật quy hoạch động giải bài toán dãy con lớn nhất, giải thuật quy hoạch động giải bài toán dãy con chung dài nhất,...
1 Các toán chung lồng giải thuật quy hoạch động Giải thuật quy hoạch động giải toán túi Giải thuật quy hoạch động giải toán dãy lớn Giải thuật quy hoạch động giải toán dãy chung dài Giải thuật quy hoạch động giải nhân dãy ma trận Ví dụ toán chung lồng Quy hoạch động gì? Ba giai đoạn tốn quy hoạch động Khi chia toán thành toán con, nhiều trường hợp, toán khác lại chứa tốn hồn tồn giống Ta nói chúng chứa tốn chung giống Ví dụ: Định nghĩa số Fibonaci F(n): F(0)=0 F(1)=1 F(n)=F(n-2)+F(n-1) với n>1 Ví dụ: F(2)=1, F(3)= 2, F(4) = , F(5)=5, F(6)=8 Tính theo đệ quy {top down}: Function R_Fibonaci(n); If n 0, có n – s phần tử đường chéo cần tính, để tính phần tử ta cần so sánh s giá trị số tương ứng với giá trị k Từ suy số phép toán cần thực theo thuật toán cỡ 52 tương đương với 53 Begin For i: = to n m[i,i]:=0; For s:=1 to n For i:= to n–s begin j:=i+s–1; m[i,j]:= +∞; For k:=i to j–1 begin q:=m[i,k]+m[k+1,j]+d[i-1]*d[k]*d[j]; If(q