1. Trang chủ
  2. » Luận Văn - Báo Cáo

Bài giảng Thiết kế và đánh giá thuật toán: Lập trình động - TS. Lê Nguyên Khôi

22 0 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Thiết kế và Đánh Giá Thuật Toán: Lập trình Động
Tác giả TS. Lê Nguyên Khôi
Trường học Trường Đại Học Công Nghệ - ĐHQGHN
Chuyên ngành Thiết kế và Đánh giá Thuật toán
Thể loại Bài giảng
Thành phố Hà Nội
Định dạng
Số trang 22
Dung lượng 168,42 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Trong lĩnh vực Công Nghệ Thông Tin nói riêng, yêu cầu quan trọng nhất của người học đó chính là thực hành. Có thực hành thì người học mới có thể tự mình lĩnh hội và hiểu biết sâu sắc với lý thuyết. Với ngành mạng máy tính, nhu cầu thực hành được đặt lên hàng đầu. Tuy nhiên, trong điều kiện còn thiếu thốn về trang bị như hiện nay, người học đặc biệt là sinh viên ít có điều kiện thực hành. Đặc biệt là với các thiết bị đắt tiền như Router, Switch chuyên dụng

Trang 1

Thiết Kế & Đánh Giá Thuật Toán

Lập Trình Động

Trang 2

Nội Dung

Trang 3

Chia Để Trị - Nhắc Lại

 Chia bài toán lớn thành bài toán nhỏ không giao nhau

 Giải các bài toán nhỏ (theo phương pháp đệ quy)

 Gộp lời giải bài toán nhỏ thành lời giải bài toán lớn

Trang 4

Lập Trình Động

 Lần lượt giải bài toán từ nhỏ nhất đến lớn

 Xây dựng lời giải bài toán lớn dựa trên lời giải bài

toán nhỏ

 Sắp xếp chèn (insertion sort)

Trang 5

Lập Trình Động

 Lời giải tối ưu của bài toán con có thể sử dụng để xây dựng lời giải tối ưu cho bài toán toàn cục

Trang 6

Lập Trình Động

trưng tối ưu

Trang 7

Lập Trình Động

 Dựa trên các bước sau

thông qua nghiệm của các bài toán con

Trang 8

Chia Để Trị – Lập Trình Động

toán con gối nhau

Trang 9

Bài Toán

Trang 12

Dãy Con Tăng Dài Nhất

Trang 13

Dãy Con Tăng Dài Nhất

kết thúc tại phần tử thứ k

hoặc bằng S[k], trả về dãy con chỉ chứa S[k]

gọi W là dãy dài nhất trong các dãy con tăng

Trang 14

Dãy Con Tăng Dài Nhất

Trang 16

Ba Lô

1 chiếc ba lô có thể mang được không quá M kg

Tìm cách mang một số đồ vật để tổng giá trị lấy

Trang 17

Ba Lô

for mọi ô [x, y]

if x = 0 và y = 0 then cell[x, y] = 0kg $0 {}

else gọi m là đồ vật thêm vào ở cột y gọi w là khối lượng của m

if w > khối lượng cực đại của hàng cell[x, y] = cell[x, y-1]

else cell[x, y] = max {cell[x, y-1], (cell[x-w, y-1] U {m})}

Trang 18

Ba Lô

for mọi ô [x, y]

if x = 0 và y = 0 then cell[x, y] = 0kg $0 {}

else gọi m là đồ vật thêm vào ở cột y gọi w là khối lượng của m

if w > khối lượng cực đại của hàng cell[x, y] = cell[x, y-1]

else cell[x, y] = max {cell[x, y-1], (cell[x-w, y-1] U {m})}

Đồ vật Khối lượng Giá trị

kg ≤ 1 0kg $0 {} 1kg $100 {A} 1kg $100 {A} 1kg $100 {A} 1kg $100 {A} 1kg $100 {A}

kg ≤ 2 0kg $0 {} 1kg $100 {A} 1kg $100 {A} 1kg $100 {A} 1kg $100 {A} 1kg $100 {A}

kg ≤ 3 0kg $0 {} 1kg $100 {A} 3kg $200 {B} 3kg $200 {B} 3kg $200 {B} 3kg $200 {B}

kg ≤ 4 0kg $0 {} 1kg $100 {A} 4kg $300 {A, B} 4kg $300 {A, B} 4kg $300 {A, B} 4kg $300 {A, B}

Trang 19

Dãy Con Chung Dài Nhất

chung dài nhất của chúng.

Trang 20

Dãy Con Chung Dài Nhất

chung dài nhất của chúng.

Trang 21

Dãy Con Chung Dài Nhất

hàm mũ

Trang 22

Cắt Dây

Ngày đăng: 02/07/2023, 05:24

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm