1. Trang chủ
  2. » Công Nghệ Thông Tin

Cấu trúc dữ liệu - Phần 5 pps

36 153 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 đề Cấu trúc dữ liệu - Phần 5 pps
Trường học Trường Phạm Hữu Thế
Chuyên ngành Cấu Trúc Dữ Liệu
Thể loại Giáo trình
Năm xuất bản 2023
Thành phố Hà Nội
Định dạng
Số trang 36
Dung lượng 307,56 KB

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

Nội dung

Bài toán li t kê... Bài toán li t kê... Bài toán li t kê... Bài toán li t kê  Phân tích bài toán... Bài toán li t kê... Bài toán li t kê... Bài toán li t kê... Bài toán mã đi tu n.

Trang 1

GVGD: Tr ng Ph c H i

Gi i thu t quay lui

(back tracking)

Trang 2

2

N i dung

1 K thu t quay lui

3 Bài toán 8 h u

4 Bài toán mã đi tu n

2 Bài toán li t kê

Trang 3

K thu t quay lui

toán

start

end

Trang 5

K thu t quay lui

Trang 6

6

K thu t quay lui

 Mô hình t ng quát c a gi i thu t quay lui

Trang 7

N i dung

1 K thu t quay lui

3 Bài toán 8 h u

4 Bài toán mã đi tu n

2 Bài toán li t kê

Trang 9

Bài toán li t kê

 Bi u di n dãy nh phân N bit d i d ng m ng m t chi u X[0], X[1], …, X[N-1]

 Ph n t c a m ng X[i] có t p giá tr {0, 1}

Trang 10

10

Bài toán li t kê

 Ý t ng

 Th gán cho X[i] l n l t mang các giá tr {0, 1}

 V i m i giá tr ch n đ c cho X[i], th các giá tr có th có cho X[i + 1]

 Ti p t c th c hi n cho đ n ph n t cu i cùng X[N – 1], khi

đó ta tìm đ c m t dãy nh phân cho bài toán

Trang 11

Bài toán li t kê

Gi i thu t th t c Try c a bài toán

Trang 12

X[i] = j;

if (i == N - 1)

Print(X, N);

else Try(X, N, i + 1); }

}

Trang 13

Bài toán li t kê

Trang 14

14

Bài toán li t kê

 Bài toán 2

 Li t kê t t c cách ch n k ph n t t t p g m N ph n t {1, 2, …, N}

 Ví d

 Cho t p g m 5 ph n t {1, 2, 3, 4, 5}, các cách ch n ra 3

ph n t t t p này là: {123, 124, 125, 134, 135, 145, 234,

235, 245, 345}

Trang 15

Bài toán li t kê

 Phân tích bài toán

Trang 16

 V i m i X[i] (i{1, , k}), gán l n l t t ng giá tr trong

mi n giá tr c a X[i] Khi đ n ph n t th k thì ta có đ c

m t cách ch n

 Mi n giá tr c a X[i]: X[i-1] + 1 ≤ X[i] ≤ N – k + i

Trang 17

Bài toán li t kê

Gi i thu t th t c Try c a bài toán

Trang 19

Bài toán li t kê

Trang 20

20

Bài toán li t kê

 Phân tích bài toán

 M i hoán v đ c bi u di n d i d ng m t dãy các ph n t (x0x1…xN-1)

 Các ph n t xi c a m t hoán v là khác nhau đôi m t

 S d ng m ng m t chi u X[0], X[1], …, X[N-1] đ bi u

di n m t hoán v

Trang 21

Bài toán li t kê

 Ý t ng

 S d ng m ng đánh d u C[j] = {0, 1} cho bi t kh n ng j

đ c phép ch n hay không (1: đ c; 0: không đ c)

 Th l n l t t t c kh n ng ch a b ph n t khác ch n cho X[i]

 V i nh ng kh n ng còn l i ch a đ c ch n, th l n l t cho X[i+1] và c th ti p t c cho đ n X[N-1]

Trang 22

 G i đ quy Try(i + 1) đ tìm giá tr cho X[i + 1]

 t C[j] = 1 đ tr t do cho j khi d ng đ quy

Trang 23

Bài toán li t kê

Gi i thu t th t c Try c a bài toán

Trang 25

N i dung

1 K thu t quay lui

3 Bài toán 8 h u

4 Bài toán mã đi tu n

2 Bài toán li t kê

Trang 26

26

Bài toán 8 h u

 Bài toán: đ t 8 quân h u vào bàn c vua sao cho

Trang 30

}

}

Trang 31

N i dung

1 K thu t quay lui

3 Bài toán 8 h u

4 Bài toán mã đi tu n

2 Bài toán li t kê

Trang 32

32

Bài toán mã đi tu n

 Bài toán: hãy ch ra m t hành trình c a quân mã

xu t phát t i ô (1, 1) và đi qua t t c ô c a bàn c vua, m i ô qua đúng 1 l n

Trang 33

Bài toán mã đi tu n

Trang 35

Bài toán mã đi tu n

Gi i thu t th t c Try c a bài toán

Trang 36

FindNext(row, col, Cells, nums);

for ( int i = 0; i < nums; i++)

Ngày đăng: 08/08/2014, 04:21

TỪ KHÓA LIÊN QUAN

w