Sắp xếp hậu trên bàn cờ vua sao cho chúng quản lý tất cả các vị trí trên bàn cờ
ĐỒ ÁN CẤU TRÚC DỮ LIỆU GVHD: Th.S PHAN CHÍ TÙNG Đề tài 8: Sắp xếp hậu bàn cờ vua cho chúng quản lý tất vị trí bàn cờ LỜI NÓI ĐẦU Ngày công nghệ thông tin đóng vai trò quan trọng trở thành phần thiếu đời sống Việc ứng dụng cách rộng rãi vào lĩnh vực đem lại hiệu quả, suất công việc cao Điều đòi hỏi ngày cải tiến công nghệ, tối ưu hóa thuật toán để phát triển nhiều tính Có nhiều công cụ, môn học để giải vấn đề Một môn học tảng quan trọng ảnh hưởng trực tiếp đến thuật toán “Cấu trúc liệu thuật toán” Để sâu nắm vững cách có hệ thống kiến thức thu nhận trình học môn “Cấu trúc liệu” nhóm em chọn đề tài “Sắp xếp quân hậu bàn cờ vua cho chúng quản lý tất cáo vị trí bàn cờ ” để tìm hiểu nghiên cứu Trong trình thực đồ án, chúng em xin chân thành cảm ơn hướng dẫn tận tình thầy Phan Chí Tùng giúp đỡ chúng em hoàn thành tốt đồ án môn học Nhóm Nhóm Trang 1/32 ĐỒ ÁN CẤU TRÚC DỮ LIỆU GVHD: Th.S PHAN CHÍ TÙNG Đề tài 8: Sắp xếp hậu bàn cờ vua cho chúng quản lý tất vị trí bàn cờ MỤC LỤC LỜI NÓI ĐẦU MỤC LỤC CHƯƠNG I TỔNG QUAN ĐỀ TÀI 1.1 Mục tiêu đề tài 1.2 Hướng giải Tính toán độ phức tạp thuật toán CHƯƠNG II CƠ SỞ LÝ THUYẾT 2.1 Giới thiệu 2.2 Lịch sử 2.3 Tính chất số học lời giải 10 2.4 Số lời giải cho toán n quân hậu 11 CHƯƠNG III PHÂN TÍCH VÀ XÂY DỰNG 12 CHƯƠNG TRÌNH 12 3.1 Phân tích đề tài 12 In put: 12 Nhập số hậu cần xếp bàn cờ 12 Output: 12 3.2 Thuật toán 12 Có giải thuật đơn giản tìm lời giải cho toán n quân hậu với n = n ≥ 4: 12 Ví dụ : 13 Giải thuật đệ quy quay lui tìm kiếm tất lời giải 15 Mã giả .16 3.3 Cấy tìm kiếm giải thuật 18 3.4 Xây dựng chương trình 19 3.4.1 Khởi tạo 19 for( i=1;i[...]... 8: Sắp xếp hậu trên bàn cờ vua sao cho chúng quản lý tất cả các vị trí trên bàn cờ Kết quả các cách sắp xếp 7 Hậu Nhóm 3 Trang 24/32 ĐỒ ÁN CẤU TRÚC DỮ LIỆU GVHD: Th.S PHAN CHÍ TÙNG Đề tài 8: Sắp xếp hậu trên bàn cờ vua sao cho chúng quản lý tất cả các vị trí trên bàn cờ Chương trình Mô phỏng bằng VB: Nhóm 3 Trang 25/32 ĐỒ ÁN CẤU TRÚC DỮ LIỆU GVHD: Th.S PHAN CHÍ TÙNG Đề tài 8: Sắp xếp hậu trên bàn cờ. .. xứng, phép quay bàn cờ thì chúng chỉ có 12 lời giải đơn vị như biểu diễn dưới đây: Nhóm 3 Trang 13/32 ĐỒ ÁN CẤU TRÚC DỮ LIỆU GVHD: Th.S PHAN CHÍ TÙNG Đề tài 8: Sắp xếp hậu trên bàn cờ vua sao cho chúng quản lý tất cả các vị trí trên bàn cờ Nhóm 3 Trang 14/32 ĐỒ ÁN CẤU TRÚC DỮ LIỆU GVHD: Th.S PHAN CHÍ TÙNG Đề tài 8: Sắp xếp hậu trên bàn cờ vua sao cho chúng quản lý tất cả các vị trí trên bàn cờ Lời giải... PHAN CHÍ TÙNG Đề tài 8: Sắp xếp hậu trên bàn cờ vua sao cho chúng quản lý tất cả các vị trí trên bàn cờ Remote(row,Hau[row]); } } printf("\n | So cach xep la %d",count); printf("\n | Nhan phim bat ky de ket thuc!"); getch(); } Nhóm 3 Trang 31/32 ĐỒ ÁN CẤU TRÚC DỮ LIỆU GVHD: Th.S PHAN CHÍ TÙNG Đề tài 8: Sắp xếp hậu trên bàn cờ vua sao cho chúng quản lý tất cả các vị trí trên bàn cờ LỜI NHẬN XÉT CỦA GIÁO... 8: Sắp xếp hậu trên bàn cờ vua sao cho chúng quản lý tất cả các vị trí trên bàn cờ CHƯƠNG IV 4.1 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN Kết quả đạt được Xây dựng được chương trình Sắp xếp Hậu trên bàn cở vua Kiểm tra vị trí của hậu trên bàn cờ và đưa ra kết quả các cách sắp xếp 4.2 Hạn chế Giao diện chương trình chưa đẹp Chức năng chương trình còn ít 4.3 Hướng phát triển Hoàn thiện các chức năng còn thiếu của... lại nhấc quân hậu ở dòng thứ i-1 và tìm phương án tiếp theo của dòng thứ i-1 Nhận xét: trong hai lời giải ở hình bên các vị trí của quân hậu trên bàn cờ đứng theo vị trí nước đi của quân ngựa Mã giả Procedure Try_row(i) For j=1 To n do Nhóm 3 Trang 16/32 ĐỒ ÁN CẤU TRÚC DỮ LIỆU GVHD: Th.S PHAN CHÍ TÙNG Đề tài 8: Sắp xếp hậu trên bàn cờ vua sao cho chúng quản lý tất cả các vị trí trên bàn cờ If not ok_row(i)... 8: Sắp xếp hậu trên bàn cờ vua sao cho chúng quản lý tất cả các vị trí trên bàn cờ Chẳng hạn lời giải cho trong hình trên biểu diễn bới dãy ô (1 ,4),(2, 7), (3, 3), (4, 8), (5,2), (6,5), (7,1), (8,6) Ta có thể kiểm tra các điều kiện trên trong bảng: i 1 2 3 4 5 6 7 8 j 4 7 3 8 2 5 1 6 i+j 5 9 6 12 7 11 8 14 i-j -3 -5 0 -4 3 1 6 2 2.4 Số lời giải cho bài toán n quân hậu Ta có bảng sau đây cho n quân hậu, ... else return ok=1; } 3.4.5 Hàm lấy lại Hậu ở hang và cột void Remote(int r, int c) { Test_Col[c]=0; Test_Up[c+r]=0; Test_Down[r-c+n]=0; } Nhóm 3 Trang 22/32 ĐỒ ÁN CẤU TRÚC DỮ LIỆU GVHD: Th.S PHAN CHÍ TÙNG Đề tài 8: Sắp xếp hậu trên bàn cờ vua sao cho chúng quản lý tất cả các vị trí trên bàn cờ 3.5 Kết Quả chương trình Hiển thị khi chạy: Kết quả các cách sắp xếp 6 Hậu Nhóm 3 Trang 23/32 ĐỒ ÁN CẤU TRÚC... tất cả các lời giải của bài toán n hậu chỉ bao gồm một lời gọi Try_row(1): Procedure n_queen(n); Call Try_row(1); Nhóm 3 Trang 17/32 ĐỒ ÁN CẤU TRÚC DỮ LIỆU GVHD: Th.S PHAN CHÍ TÙNG Đề tài 8: Sắp xếp hậu trên bàn cờ vua sao cho chúng quản lý tất cả các vị trí trên bàn cờ 3.3 Cấy tìm kiếm trong giải thuật Cố gắng không thành công Cây tìm kiếm lời giải với n=4 Ta minh họa quá trình tìm kiếm lời giải cho. .. cả các vị trí trên bàn cờ Insert(row,col); S[row]=1; break; } } } else { for(col=1;col ... vua cho chúng quản lý tất vị trí bàn cờ Kết cách xếp Hậu Nhóm Trang 24/32 ĐỒ ÁN CẤU TRÚC DỮ LIỆU GVHD: Th.S PHAN CHÍ TÙNG Đề tài 8: Sắp xếp hậu bàn cờ vua cho chúng quản lý tất vị trí bàn cờ. .. Sắp xếp hậu bàn cờ vua cho chúng quản lý tất vị trí bàn cờ CHƯƠNG IV 4.1 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN Kết đạt Xây dựng chương trình Sắp xếp Hậu bàn cở vua Kiểm tra vị trí hậu bàn cờ đưa kết cách... Sắp xếp hậu bàn cờ vua cho chúng quản lý tất vị trí bàn cờ 32 32 32 32 32 32 32 32 Nhóm Trang 7/32 ĐỒ ÁN CẤU TRÚC DỮ LIỆU GVHD: Th.S PHAN CHÍ TÙNG Đề tài 8: Sắp xếp hậu bàn cờ vua cho chúng quản