TAILIEUCHUNG - Bài giảng Phân tích thiết kế giải thuật: Dynamic Programming (tiếp) - GV. Hà Đại Dương

Bài giảng gồm các bài tập minh họa cho phương pháp Qui hoạch động: bài toán tìm xâu con chung dài nhất, đường đi ngắn nhất - Thuật toán Floyd và bài toán cây nhị phân tìm kiếm tối ưu. Tài liệu hữu ích dành cho các bạn sinh viên ngành Công nghệ thông tin. . | 2/2/2017 Analysis and Design of Algorithms Lecture 9,10 Dynamic Programming Lecturer: Ha Dai Duong duonghd@ 2/2/2017 1 Nội dung 1. 2. 3. 4. 5. 6. 7. Lược đồ chung Bài toán tính số Fibonaci Bài toán cái túi Bài toán dãy con có tổng lớn nhất Bài toán tìm xâu con chung dài nhất Đường đi ngắn nhất - TT Floyd Cây nhị phân tìm kiếm tối ưu 2/2/2017 2 Bài toán • Cho hai xâu X = (x1,x2, ,xm) và Y = (y1,y2, ,yn) • Hãy tìm xâu con chung dài nhất của hai dãy X và Y. • Ví dụ X = KHOA HOC Y = HOA HONG 2/2/2017 HOA HO 3 1 2/2/2017 Ý tưởng thuật toán • Phân rã: – m: chiều dài xâu X, n: chiều dài xâu Y – Với mỗi 0≤ i ≤ m và 0 ≤ j ≤ n gọi C[i, j] là độ dài của dãy con chung dài nhất của hai dãy Xi=x1x2 xi và Yj =y1y2 yj (Qui ước X0 = rỗng, Y0= rỗng) – Khi đó C[m,n] là chiều dài xâu con chung dài nhất của X và Y. • Bài toán con: C[0,j]=0 j=1n, C[i,0] = 0 i=1m 2/2/2017 4 Tổng hợp • Với i > 0, j > 0 tính C[i, j] – Nếu xi = yj thì dãy con chung dài nhất của X i và Yj sẽ thu được bằng việc bổ sung x i (cũng là yj) vào dãy con chung dài nhất của hai dãy X i-1 và Yj-1 C[i,j] = C[i-1,j-1]+1 – Nếu xi ≠ yj thì dãy con chung dài nhất của X i và Yj sẽ là dãy con dài hơn trong hai dãy con chung dài nhất của (Xi 1 và Yj) và của (Xi và Yj 1) C[i,j] = Max{C[i-1,j], C[i,j-1]} 2/2/2017 5 Cài đặt Procedure LCS(X,Y) { For i =1 to m do c[i,0]=0; For j =1 to n do c[0,j ]=0; For i =1 to m do for j = 1 to n do If xi = yj then { c[i,j]=c[i-1,j-1]+1; b[i,j]=’ ’ } else If c [i-1,j]≥ c[i,j-1] then { c[i,j]=c[i-1,j]; b[i,j]=’ ’;} else { c[i,j]=c[i,j-1]; b[i,j]=’ ’;} } 2/2/2017 6 2 2/2/2017 Minh họa • X= KHOAHOC, Y= HOAHONG K H O A H O C H O A H O N G 2/2/2017 7 Khởi tạo • Y= KHOAHOC, X= HOAHONG K 0 H 0 0 G 0 0 N 0 0 O H O C 0 0 H A 0 0 A O 0 0 O H 0 0 2/2/2017 8 Lặp • X= KHOAHOC, Y= HOAHONG K O A H O C 0 0 0 0 0 H 0 0 O 0 A 0 H 0 O 0 N 0 G 2/2/2017 H 0 0 0 0 9 3 2/2/2017 Lặp • X= KHOAHOC, Y= .

TỪ KHÓA LIÊN QUAN
TAILIEUCHUNG - Chia sẻ tài liệu không giới hạn
Địa chỉ : 444 Hoang Hoa Tham, Hanoi, Viet Nam
Website : tailieuchung.com
Email : tailieuchung20@gmail.com
Tailieuchung.com là thư viện tài liệu trực tuyến, nơi chia sẽ trao đổi hàng triệu tài liệu như luận văn đồ án, sách, giáo trình, đề thi.
Chúng tôi không chịu trách nhiệm liên quan đến các vấn đề bản quyền nội dung tài liệu được thành viên tự nguyện đăng tải lên, nếu phát hiện thấy tài liệu xấu hoặc tài liệu có bản quyền xin hãy email cho chúng tôi.
Đã phát hiện trình chặn quảng cáo AdBlock
Trang web này phụ thuộc vào doanh thu từ số lần hiển thị quảng cáo để tồn tại. Vui lòng tắt trình chặn quảng cáo của bạn hoặc tạm dừng tính năng chặn quảng cáo cho trang web này.