chu trình Hamilton

37 490 0
chu trình Hamilton

Đ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

GIÁO VIÊN CHẤM NHẬN XÉT ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ………………………… ************************************************************************ GIÁO VIÊN HƯỚNG DẪN NHẬN XÉT ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………… ……………………………………………………………………………………………… ………………………………………………………… ……………………………………………………………………………………………… ………………………………………………………… ************************************************************************ ……………………………………………………………………………………………… ………………………………………………………… MỤC LỤC ĐÁNH GIÁ KẾT QUẢ THỰC HIỆN NIÊN LUẬN 1Error: Reference source not found NHẬN XÉT Error: Reference source not found CHƯƠNG 01 : TỔNG QUAN .….5Error: Reference source not found I GIỚI THIỆU 5Error: Reference source not found II.MỤC TIÊU CẦN ĐẠT ĐƯỢC 5Error: Reference source not found III.HƯỚNG GIẢI QUYẾT 5Error: Reference source not found CHƯƠNG 02 : LÝ THUYẾT NỘI DUNG TRÌNH BÀY .6 GIỚI THIỆU BÀI TOÁN Error: Reference source not found6 ĐỊNH NGHĨA CHU TRÌNH HAMILTON VÍ DỤ VỀ CHU TRÌNH VÀ ĐƯỜNG ĐI HAMILTON MÔ TẢ BÀI TOÁN (1) 6 MÔ TẢ BÀI TOÁN (1) CÁC BƯỚC GIẢI QUYẾT BÀI TOÁN THỦ TỤC MÔ TẢ THUẬT TOÁN ……………………………………… CÁC THỦ TỤC KHỞI TẠO (1) 10 CÁC THỦ TỤC KHỞI TẠO (1) 11 THỜI GIAN THỰC HIỆN ………………………………………… 12 MỘT SỐ VÍ DỤ VÀ CÁC ĐỊNH LÝ MINH HỌA ……………………… CHƯƠNG 03: ỨNG DỤNG 13 GIỚI THIỆU CHƯƠNG TRÌNH 33Error: Reference source not found CHƯƠNG 04: KẾT LUẬN 34Error: Reference source not found I NHẬN XÉT KẾT QUẢ ĐẠT ĐƯỢC 34Error: Reference source not found II HẠN CHẾ 34Error: Reference source not found III HƯỚNG PHÁT TRIỂN 34Error: Reference source not found CHƯƠNG 05: CHƯƠNG TRÌNH DEMO .34Error: Reference source not found I GIAO DIỆN 35Error: Reference source not found II.HƯỚNG DẪN CHƯƠNG TRÌNH .37Error: Reference source not found TÀI LIỆU THAM KHẢO 38 ************************************************************************ Chương Tổng Quan I GIỚI THIỆU - Lý thuyết đồ thị lĩnh vực nghiên cứu từ năm đầu kĩ 18 nhà toán học Leonhard Euler người Thụy sĩ Đồ thị sử dụng để giải nhiều toán nhiều lĩnh vực khác nhau, tin học trường hợp cụ thể - Lý thuyết đồ thị cung cấp hình thức thuận tiện cho việc mô tả mối liên hệ đối tượng quan tâm, góp phần quan trọng vào việc giải toán phức tạp II.MỤC TIÊU ĐẠT ĐƯỢC  lý thuyết : - Nắm vững kiền thức toán rời rạc cách tìm đường chu trình Hamilton - Hiểu rỏ ngôn ngữ lật trình c để giải vấn đề đặt - Cho phép nhập vào ma trận kề số đỉnh tự để tạo chu trình ,từ áp dụng phương pháp cách tìm chu trình Hamilton, để tìm đường chu trình Hamilton từ thuật toán  chương trình: - Xây dựng giao diện thân thiện với người sử dụng Dể sử dụng,kết tính toán xác III.HƯỚNG GIẢI QUYẾT  Về lý thuyết:tìm hiểu khái niệm chu trình Hamilton , tồn chu trình Hamilton , điều kiện để có chu trình … kiến thức lập trình ngôn ngữ sử dụng để giải yêu cầu đề tài chương trình:sử dụng ngôn ngữ lập trình C để viết chương trình ,cài đặt thuật toán theo yêu cầu đề tài ,nghiên cứu cài đặt thủ tục hàm đồ họa để hỗ trợ giao diện thân thiện với người sử dụng  Chương LÝ THUYẾT NỘI DUNG TRÌNH BÀY o Giới thiệu toán o Định nghĩa Chu trình Hamilton o Mô hình toán o Các bước giải toán o Thủ tục mô tả thuật toán o Thời gian thực ************************************************************************ GIỚI THIỆU BÀI TOÁN Một người khách du lịch muốn thăm n thành phố đánh số từ đến n Mạng lưới giao thông n thành phố chiều cho ma trận A[i,j] A[i,j] = có đường thành phố i thành phố j, A[i,j] = trường hợp ngược lại Thiết lập đường cho người khách thông báo tồn đường không tồn đường ĐỊNH NGHĨA CHU TRÌNH HAMILTON o Cho đồ thị G=(V, E) có n đỉnh o Chu trình (x , x , …, x n , x ) gọi Chu trình Hamilton x i x j với 1 Nếu r(a0) + r(aq) ≥ q +1 đồ thị G’ tạo tập đỉnh {a0, a1, , aq} có chu trình vô hướng Hamilton Chứng minh: Ký hiệu r'(a) bậc đỉnh a G’ Vì đường đơn cho cực đại nên: r'(a0) = r(a0), r'(aq) = r(aq) Hình 7.10 Cách tìm chu trình Hamilton Giả sử r(a0) = k, nghĩa đỉnh a0 kề với k đỉnh đường a1 , ai2 , , aik - Nếu a0 kề với aq G’ có chu trình vô hướng Hamilton - Nếu aq không kề với a0 , ai2-1 , , aik-1 Đó đỉnh nằm bên trái dãy đỉnh đường nói Thế thì: r(aq) ≤ q - k Do đó: r(a0) + r(aq) ≤ q, trái với giả thiết Vậy phải có đỉnh ai-1 cho a0 kề với aq kề với ai-1 Khi dãy đỉnh [a0 , , , aq , ai-1, , a0] chu trình vô hướng G’  Bổ đề 7.11: Giả sử đồ thị G liên thông Nếu đỉnh đường đơn vô hướng dài tạo nên đồ thị G’ có chu trình vô hướng Hamilton chu trình chu trình vô hướng Hamilton đồ thị G Chứng minh: Ta cần chứng minh rằng, đồ thị G’ đồ thị G Giả sử ngược lại, có đỉnh a thuộc G không thuộc đồ thị G’ Vì đồ thị G liên thông nên với đỉnh b thuộc G’ có đường vô hướng G nối đỉnh b với đỉnh a < b = a0 , a1 , , a > ************************************************************************ 10 setcolor(4); setlinestyle(CENTER_LINE,4,3); for(i=0;i[...]... bậc ≤ 1 thì không có chu trình Hamilton 2 Đồ thị có các đỉnh đều có bậc ≥ 2 Nếu có đỉnh nào có bậc bằng 2 thì mọi chu trình Hamilton (nếu có) phải đi qua hai cạnh kề với đỉnh này 3 Nếu trong đồ thị có đỉnh có ba đỉnh bậc 2 kề với nó thì đồ thị không có chu trình Hamilton 4 Nếu đỉnh a có hai đỉnh kề bậc 2 là b và c thì mọi cạnh (a, x), x ∉{b, c} sẽ không thuộc bất kỳ chu trình Hamilton nào 5 Đồ thị... ************************************************************************ 11 Hình 7.12 Đồ thị có hướng có chu trình vô hướng Hamilton Đồ thị thoả mãn điều kiện 2) nên nó có chu trình vô hướng Hamilton Nếu ta bỏ cạnh (c, d) thì điều kiện 1) thoả mãn còn điều kiện 2) không thoả mãn nữa Đồ thị chỉ có đường đi vô hướng Hamilton Hệ quả 7.13 (Dirac): Nếu ∀a ∈ V, r(a) ≥2n thì đồ thị G có chu trình vô hướng Hamilton Chứng minh: Suy ra từ phần 2) của Định lý 7.12... hướng Hamilton 2) Nếu ∀a, b ∈ V, r(a) + r(b) ≥ n thì G có chu trình vô hướng Hamilton Chứng minh: 1) Giả sử < x0 , , xq > là đường đi đơn vô hướng dài nhất của G Đường đi này có độ dài là q - Nếu q = n-1 thì đó là đường đi Hamilton của đồ thị G - Nếu q ≤ n-2 thì r(x0) + r(xq) ≥ n-1 ≥ q +1 và theo Bổ đề 7.10 đồ thị con G’ tạo bởi tập đỉnh {x0 , , xq} có chu trình vô hướng Hamilton Giả sử chu trình. .. xq > Do vậy q = n-1 Đồ thị G luôn có đường đi vô hướng Hamilton 2) Theo 1) thì trong đồ thị G có đường đi đơn vô hướng dài nhất chứa tất cả n đỉnh là < y0 , y1 , , yn-1 > Hơn nữa, r(y0) + r(yn-1) ≥ n = (n-1) +1, nên theo Bổ đề 7.10 thì đồ thị con G’ sinh bởi tập đỉnh {y0, y1, , yn-1} có chu trình vô hướng Hamilton, và đó cũng chính là chu trình Hamilton của đồ thị G  Ví dụ 7.9: Xét đồ thị có hướng... , a2 , , ak > Với chỉ số k < n và các đỉnh trên đường đi (trừ a1 và ak) đều có bậc 2 thì cạnh (a1,ak) sẽ không thuộc bất kỳ chu trình Hamilton nào 6 Đồ thị hai phần G = (V1,V2, F) với | V1 | ≠ | V2 | sẽ không có một chu trình Hamilton nào Chương 3 ỨNG DỤNG 1 GIỚI THIỆU CHƯƠNG TRÌNH: CODE : #include #include #include #include #include #include... for(j=0;jChu trinh Hamilton la : "); setcolor(YELLOW); for(i=0;iChu trinh Hamilton la : "); setcolor(YELLOW); for(i=0;i ... sukien(banphim,chuottrai,chuotphai); if(chuottrai) { if(xy_danhsachdinh(x1,y1,ctd,sodinh,dinh1)&&! xy_danhsachdinh(x2,y2,ctd,sodinh,dinh2)) di_ chuyen_dinh(ctd,dinh1,x2,y2); if(xy_danhsachdinh(x1,y1,ctd,sodinh,dinh1)&&xy_danhsachdinh(x2,y2,ctd,sodin... if(xy_danhsachdinh(x1,y1,ctd,sodinh,dinh1)&&xy_danhsachdinh(x2,y2,ctd,sodin h,dinh2)&&x1!=x2) { ke[dinh1][dinh2]=1; ke[dinh2][dinh1]=1; } if(!xy_danhsachdinh(x2,y2,ctd,sodinh,dinh2)) them_dinh(x2,y2); } if(chuotphai)... outtextxy(128,440,"== >Chu trinh Hamilton la : "); setcolor(YELLOW); for(i=0;i

Ngày đăng: 25/01/2016, 15:36

Tài liệu cùng người dùng

Tài liệu liên quan