1. Trang chủ
  2. » Giáo án - Bài giảng

Bài Giang TOÁN RỜI RẠC C3 năm 2016 (Đại học Bách Khoa)

32 697 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

Định dạng
Số trang 32
Dung lượng 4,66 MB

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

Nội dung

TOÁN RỜI RẠC là một trong những lĩnh vực của toán học nghiên cứu các đối tượng rời rạc. Chúng ta sẽ sử dụng công cụ của toán rời rạc khi phải đếm các đối tượng , khi nghiên cứu các quan hệ giữa các tập rời rạc. Cuốn bài giang này nhằm giới thiệu các kiến thức cơ bản trong ba lĩnh vực có nhiều ứng dụng cảu toán rời rạc là: lý thuyết tổ hợp , lý thuyết dồ thị và hàm số đs lôgic.

Trang 1

BÀI TOÁN LIỆT KÊ

Nguyễn Văn Hiệu, 2012, Discrete Mathematics 1

Giáo viên: TS Nguyễn Văn Hiệu

Trang 2

Nguyễn Văn Hiệu, 2012, Discrete Mathematics 3

Mục đích

thể có

Bản chất

thể lần lượt xây dựng được tất cả các

cấu hình đang quan tâm.

1.1 Giới thiệu

Nguyên tắc

Trang 3

Nguyễn Văn Hiệu, 2012, Discrete Mathematics 5

tự đã xác định trước

Trang 4

Nguyễn Văn Hiệu, 2012, Discrete Mathematics 7

Ví dụ

 Định nghĩa thứ tự từ điển:

b = (b 1 b 2 b n ) và *b = (*b 1 *b 2 *b n )

thứ tự b < *b,

Trang 5

Nguyễn Văn Hiệu, 2012, Discrete Mathematics 9

Ví dụ 1:

Liệt kê các dãy nhị phân có độ dài n

Bước 2: Cấu hình đầu

Trang 6

Nguyễn Văn Hiệu, 2012, Discrete Mathematics 11

Trang 7

Nguyễn Văn Hiệu, 2012, Discrete Mathematics 13

Trang 8

Nguyễn Văn Hiệu, 2012, Discrete Mathematics 15

Trang 9

Nguyễn Văn Hiệu, 2012, Discrete Mathematics 17

{ 1,4,5 }

{ 2,3,4 }

{ 2,3,5 } { 2,4,5 } { 3,4,5 }

Trang 10

Nguyễn Văn Hiệu, 2012, Discrete Mathematics 19

Trang 11

Nguyễn Văn Hiệu, 2012, Discrete Mathematics 21

1.2 Phương pháp sinh

Kết quả

Result

Chương trình Source Code

Ví dụ 2

Liệt kê các tập con k phần tử từ tập n phần tử

Trang 12

Nguyễn Văn Hiệu, 2012, Discrete Mathematics 23

Trang 13

Nguyễn Văn Hiệu, 2012, Discrete Mathematics 25

 Ánh xa tập n phần tử bất kỳ

vào tập

X = {1,2,…,n}

 Mỗi hoán vị của X được

biểu diễn bởi bộ có thứ tự

Trang 14

Nguyễn Văn Hiệu, 2012, Discrete Mathematics 27

 int temp = a[j];

a[j] = a[k]; a[k] = temp;

 int l = j+1;int r = n;

while(l<r) { int temp = a[l];

a[l]= a[r]; [r]= temp;

Trang 15

Nguyễn Văn Hiệu, 2012, Discrete Mathematics 29

1.2 Phương pháp sinh

Trang 16

Nguyễn Văn Hiệu, 2012, Discrete Mathematics 31

Kết quả

Result

Chương trình Source Code

Ví dụ 2

Liệt kê các tập hoán vị của tập n phần tử

Bài toán liệt kê

Trang 17

Nguyễn Văn Hiệu, 2012, Discrete Mathematics 33

 Để giải bài toán liệt kê

hoặc tối ưu tổ hợp

 Đã giải:

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

 Bài toán xếp hậu

 Bài toán mê cung

 Bài toán người giao

Trang 18

Nguyễn Văn Hiệu, 2012, Discrete Mathematics 35

Khái niệm

 Backtracking– đi tìm lời

giải cho bài toán mà

nghiệm của nó là một cấu

1.3 Phương pháp quay lui

Trang 19

Nguyễn Văn Hiệu, 2012, Discrete Mathematics 38

Trang 20

Nguyễn Văn Hiệu, 2012, Discrete Mathematics 40

Ví dụ

 Liệt kê dãy nhị phân có độ dài n.

 Liệt kê hoán vị tập n phần tử.

 Bài toán Xếp Hậu.

1.3 Phương pháp quay lui

Ví dụ 1

 Liệt kê xâu nhị phân độ dài n

 Biểu diễn dãy nhị phân:

Trang 21

Nguyễn Văn Hiệu, 2012, Discrete Mathematics 42

Trang 22

Nguyễn Văn Hiệu, 2012, Discrete Mathematics 44

Kết quả

Result

Chương trình Source Code

Ví dụ 1

Liệt kê xâu nhị phân độ dài n

1.3 Phương pháp quay lui

Trang 23

Nguyễn Văn Hiệu, 2012, Discrete Mathematics 46

1.3 Phương pháp quay lui

Trang 24

Nguyễn Văn Hiệu, 2012, Discrete Mathematics 48

1.2 Phương pháp sinh

Kết quả

Result

Chương trình Source Code

Ví dụ 2

Liệt kê hoán vị của tập n phần tử

Trang 25

Nguyễn Văn Hiệu, 2012, Discrete Mathematics 50

Ví dụ 3

 Liệt kê tất cả các cách xếp 8

quân Hậu trên bàn cờ 8x8 sao

cho chúng không ăn được

1.3 Phương pháp quay lui

Ví dụ 3

Quản lý cột

Trang 26

Nguyễn Văn Hiệu, 2012, Discrete Mathematics 52

Ví dụ 3:

Quản lý đường chéo thuận

Ví dụ 3

 Mảng b – quản lý đường chéo thuận

c = { c[-7], …,b[7]}

 c[k]=

1 , đ𝑐 𝑛𝑔ℎị𝑐ℎ 𝑘 𝑡ự 𝑑𝑜

0 , đ𝑐 𝑛𝑔ℎị𝑐ℎ 𝑘 đã 𝑐ℎ𝑖ế𝑢

Trang 27

Nguyễn Văn Hiệu, 2012, Discrete Mathematics 54

Trang 28

Nguyễn Văn Hiệu, 2012, Discrete Mathematics 56

1.3 Phương pháp quay lui

Trang 29

Nguyễn Văn Hiệu, 2012, Discrete Mathematics 58

Liệt kê cách xếp hậu

Phương pháp quay lui

Trang 30

(4) Tìm giải thuật đi từ trạng thái này sang trạng thái khác.

 Kỹ thuật quay lui:

(1) Tại 1 thời điểm, chỉ xét thành phần thứ i của cấu hình

(2) Với mọi trị j trong miền trị của thành phần này

2.1- Nếu chọn được 1 trị hợp lệ thì

Gán x i = j

Xử lý cấu hình ở thành phần thứ i+1

Trang 31

1 Liệt kê nghiệm nguyên của pt x 1 + x 2 + x 3 =

15 với x 1 ≥ 0 , x 2 ≥ 0 , x 3 ≥ 0.

2 Liệt kê số chuổi có độ dài 3 ký tự xyz với

x ∈ { a,b,c}, y ∈ { d,e}, z ∈ { m,n,t}

3 Viết lại các bài mẫu về giải thuật quay lui

nhưng ghi kết qủa lên file.

Nguyễn Văn Hiệu, 2012, Discrete Mathematics 62

Cấu hình ban đầu: trị đầu tiên

của mỗi miền trị

Cấu hình cuối: trị cuối cùng của

mỗi miền trị

Cách sinh:Lấy trị kế tiếp của mỗi

miền trị theo cơ chế vòng tròn

Dùng thứ tự

từ điển để so sánh:

adm < adn

Trang 32

• WHAT NEXT?

THAT’S ALL; THANK YOU

Ngày đăng: 30/08/2016, 12:05

TỪ KHÓA LIÊN QUAN

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