1. Trang chủ
  2. » Văn Hóa - Nghệ Thuật

Tài liệu Bài toán xếp 8 quân hậu ppt

7 992 14
Tài liệu đã được kiểm tra trùng lặp

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Bài toán xếp 8 quân hậu
Chuyên ngành Kỹ thuật máy tính
Thể loại Bài thuyết trình
Định dạng
Số trang 7
Dung lượng 135 KB

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

Nội dung

Giới thiệu bài toán: Quân hậu trên bàn cờ Vua có thể ăn theo hàng, cột, đường chéo chứa nó.. Tìm cách đặt 8 quân hậu trên bàn cờ sao cho không quân nào ăn được của quân nào 2.. Ý tưởng t

Trang 1

Bài toán xếp 8 quân hậu

1 Giới thiệu bài toán: Quân hậu trên bàn cờ Vua có thể ăn theo hàng, cột, đường chéo chứa nó Tìm cách đặt 8 quân hậu trên bàn cờ sao cho không quân nào ăn được của quân nào

2 Ý tưởng thuật toán: Một con hậu xếp ở một

vị trí bất kỳ trên bàn cờ thì để tìm được vị trí của con hậu tiếp theo ta phải xét theo 3

Trang 2

Mô hình bài toán

Các con hậu tiếp theo phải được chọn

ở các vị trí không nằm trên các đường dọc, đường ngang

và đường chéo của con các con hậu trước

Trang 3

Các bước giải quyết bài toán

• Ta tìm vị trí để đặt cho con hậu thứ i, với con hậu thứ i thì ta phải xét xem trên các hướng của

nó sau đó tìm tiếp vị trí cho con hậu thứ i + 1

• Nếu ở bước thứ i không tìm thấy vị trí đặt của con hậu thì chúng ta phải quay lại xét đến vị trí khác của con hậu thứ i – 1

• Trường hợp suy biến của bài toán là khi chúng

Trang 4

Bài toán tìm đường đi bằng chu trình

Hamilton

Giới thiệu bài toán: Một người khách du lịch muốn

đi thăm n thành phố được đánh số từ 1 đến n Mạng lưới giao thông giữa n thành phố này là 2 chiều và được cho bởi ma trận A[i,j] trong đó A[i,j]

= 1 nếu có đường đi giữa thành phố i và thành phố j, A[i,j] = 0 trong trường hợp ngược lại Thiết lập đường đi cho người khách thông báo tồn tại đường đi hoặc không tồn tại đường đi

Trang 5

Mô hình bài toán

• Chúng ta có file có n + 1 dòng như sau:

– Dòng 1: Ghi số nguyên dương là n thành phố – Dòng i + 1: (1≤i≤n): ghi n số nguyên không

âm A[i,1] A[i,2]…A[i,n] cho biết có đường đi hay không giữa hai thành phố i và j (1≤j≤n)

• Kết quả tồn tại hay không tồn tại đường đi.

5

0 0 1 1 1

0 0 1 1 1 

Kết quả:

Chu trình Hamilton như

Trang 6

Các bước giải quyết bài toán

• Tìm hết tất cả mọi khả năng của đường đi (Sau khi đi qua đường đi nào thì xoá bỏ đường đi đó) và kiểm tra xem đường đi này có qua đủ n đỉnh của đồ thị hay không.

Trang 7

Thủ tục mô tả thuật toán

Procedure Hamilton(k : byte);

var i : byte;

Begin

if k = n + 1 then

inkq

else

for i := 1 to n do

if (a[c[k-1],i] > 0) and not(b[i]) then

begin

a[c[k-1],i] := 0;

c[k] := i;

b[i] := true;

hamilton(k+1);

Ngày đăng: 22/12/2013, 17:15

TỪ KHÓA LIÊN QUAN

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

w