bài toán cây bao trùm trên đồ thị và ứng dụng

90 5 0
Tài liệu đã được kiểm tra trùng lặp
bài toán cây bao trùm trên đồ thị và ứng dụng

Đ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

luận văn thạc sĩNHIỆM VỤ LUẬN VĂN THẠC SĨ Họ tên học viên: Trương Bá Thái Giới tính: Nam Ngày, tháng, năm sinh: 15/01/1980 Nơi sinh: Thanh Hóa Chuyên ngành: Công nghệ thông tin MSHV: 134

Trang 1

luận văn thạc sĩ

Trang 2

luận văn thạc sĩ

Trang 3

luận văn thạc sĩ

CÔNG TRÌNH ĐƯỢC HOÀN THÀNH TẠI

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP HCM

Cán bộ hướng dẫn khoa học : TS Võ Văn Tuấn Dũng

Luận văn Thạc sĩ được bảo vệ tại Trường Đại học Công nghệ TP HCM ngày … tháng … năm …

Thành phần Hội đồng đánh giá Luận văn Thạc sĩ gồm:

(Ghi rõ họ, tên, học hàm, học vị của Hội đồng chấm bảo vệ Luận văn Thạc sĩ)

Xác nhận của Chủ tịch Hội đồng đánh giá Luận sau khi Luận văn đã được sửa chữa (nếu có)

Chủ tịch Hội đồng đánh giá LV

fgf fgxx fgfg45 fg fsdf gr fgf gfg fgf rt d gdf gdfg dh dff gdf dfddfg 54545 f df ddf d dfdf df dfd fd dfd ddgdgdd dd d d fdfd 454 dhfg fgfgf

gfsdsd sd sdsd dsd sd454 4545 4545xfdf def dtrrtrrtrt 454 454 545gd luan van do an khoa luan tot nghiep fdfd 454 dhfg fgfgf

Trang 4

luận văn thạc sĩ

NHIỆM VỤ LUẬN VĂN THẠC SĨ

Họ tên học viên: Trương Bá Thái Giới tính: Nam Ngày, tháng, năm sinh: 15/01/1980 Nơi sinh: Thanh Hóa Chuyên ngành: Công nghệ thông tin MSHV: 1341860018

I- Tên đề tài: Bài Toán Cây Bao Trùm Trên Đồ Thị và Ứng Dụng II- Nhiệm vụ và nội dung:

Tìm hiểu các thuật toán về tìm cây bao trùm trên đồ thị: thuật toán Borůvka, thuật toán Prim và thuật toán Kruskal Nghiên cứu và xây dựng ứng dụng bài toán người du lịch dựa vào cây bao trùm nhỏ nhất

III- Ngày giao nhiệm vụ: 18/8/2014

IV- Ngày hoàn thành nhiệm vụ: 15/3/2015 V- Cán bộ hướng dẫn: TS Võ Văn Tuấn Dũng

gfsdsd sd sdsd dsd sd454 4545 4545xfdf def dtrrtrrtrt 454 454 545gd luan van do an khoa luan tot nghiep fdfd 454 dhfg fgfgf

Trang 5

luận văn thạc sĩ

LỜI CAM ĐOAN

Tôi xin cam đoan đây là công trình nghiên cứu của riêng tôi Các số liệu, kết quả nêu trong luận văn là trung thực và chưa từng được ai công bố trong bất kỳ công trình nào khác

Tôi xin cam đoan rằng mọi sự giúp đỡ cho việc thực hiện luận văn này đã được cảm ơn và các thông tin trích dẫn trong luận văn đã được chỉ rõ nguồn gốc

Học viên thực hiện Luận văn

Trương Bá Thái

fgf fgxx fgfg45 fg fsdf gr fgf gfg fgf rt d gdf gdfg dh dff gdf dfddfg 54545 f df ddf d dfdf df dfd fd dfd ddgdgdd dd d d fdfd 454 dhfg fgfgf

gfsdsd sd sdsd dsd sd454 4545 4545xfdf def dtrrtrrtrt 454 454 545gd luan van do an khoa luan tot nghiep fdfd 454 dhfg fgfgf

Trang 6

luận văn thạc sĩ

Tác giả luận văn xin chân thành cảm ơn phòng sau đại học cùng toàn thể giáo sư, tiến sĩ, cán bộ trường Đại học Công nghệ TP.HCM đã tận tình giảng dạy, giúp đỡ và tạo mọi điều kiện thuận lợi trong quá trình học tập tại trường

Học viên thực hiện Luận văn

Trương Bá Thái

gfsdsd sd sdsd dsd sd454 4545 4545xfdf def dtrrtrrtrt 454 454 545gd luan van do an khoa luan tot nghiep fdfd 454 dhfg fgfgf

Trang 7

luận văn thạc sĩ

Bài toán cây bao trùm nhỏ nhất có thể được xây dựng hiệu quả nhờ sử dụng các thuật toán dựa trên chiến thuật “tham lam” Có nhiều thuật toán tìm cây bao trùm nhỏ nhất Một trong những thuật toán đầu tiên thuộc về Borůvka (1926) Hai thuật toán khá quen thuộc là thuật toán Kruskal (1956) và thuật toán Prim (1957) Bài toán người du lịch được nghiên cứu dựa vào xấp xỉ dùng cây bao trùm nhỏ nhất được trình bày trong luận văn là bài toán NP khó

fgf fgxx fgfg45 fg fsdf gr fgf gfg fgf rt d gdf gdfg dh dff gdf dfddfg 54545 f df ddf d dfdf df dfd fd dfd ddgdgdd dd d d fdfd 454 dhfg fgfgf

gfsdsd sd sdsd dsd sd454 4545 4545xfdf def dtrrtrrtrt 454 454 545gd luan van do an khoa luan tot nghiep fdfd 454 dhfg fgfgf

Trang 8

luận văn thạc sĩ

The problem of the minimum spanning tree can be constructed efficiently using algorithms based on the strategy "greedy" There are many algorithms to find the minimum spanning tree One of the first algorithm belongs Borůvka (1926) Two algorithms familiar la Kruskal algorithm (1956) and Prim algorithm (1957) The problem of the study tour is based on the approximation using the minimum spanning tree is presented in the thesis is NP problem

gfsdsd sd sdsd dsd sd454 4545 4545xfdf def dtrrtrrtrt 454 454 545gd luan van do an khoa luan tot nghiep fdfd 454 dhfg fgfgf

Trang 9

luận văn thạc sĩ

1.2 Mục đích, đối tượng và phạm vi nghiên cứu 12

1.3 Ý nghĩa khoa học và thực tiễn của đề tài 12

1.4 Cấu trúc của luận văn 12

Chương 2 KHÁI NIỆM CƠ BẢN VỀ ĐỒ THỊ 14

2.4 Cây và cây bao trùm của đồ thị 33

Chương 3 BÀI TOÁN CÂY BAO TRÙM NHỎ NHẤT 37

3.1 Nội dung và ý nghĩa bài toán 37

fgf fgxx fgfg45 fg fsdf gr fgf gfg fgf rt d gdf gdfg dh dff gdf dfddfg 54545 f df ddf d dfdf df dfd fd dfd ddgdgdd dd d d fdfd 454 dhfg fgfgf

gfsdsd sd sdsd dsd sd454 4545 4545xfdf def dtrrtrrtrt 454 454 545gd luan van do an khoa luan tot nghiep fdfd 454 dhfg fgfgf

Trang 10

luận văn thạc sĩ

3.1.2 Một số ứng dụng của cây bao trùm nhỏ nhất 38

3.2 Một số thuật giải 39

3.2.1 Thuật toán Borůvka 40

3.2.2 Thuật toán Kruskal 43

3.2.3 Thuật toán Prim 48

3.3 Bài Toán xấp xỉ nhờ cây bao trùm nhỏ nhất(MST-based approximation) 54

3.3.1 Thuật toán Christofides 56

3.3.2 Phân tích thuật toán 57

Chương 4 ỨNG DỤNG THUẬT TOÁN CHRISTOFIDES VÀO BÀI TOÁN NGƯỜI DU LỊCH 64

4.1 Phân tích yêu cầu 64

4.1.1 Sơ đồ Use Case 65

4.1.2 Đặc tả chi tiết 65

4.2 Đặc Tả Cấu Trúc Dữ Liệu 70

4.2.1 Lượt đồ quan hệ dữ liệu 71

4.2.2 Đặc tả cấu trúc bảng 72

4.3 Cài đặt và đánh giá hiệu quả thuật toán Christofides 72

4.3.1 Cài đặt thuật toán Christofides 72

4.3.2 Đánh giá hiệu quả thuật toán Christofides 74

4.4 Tính năng chính của chương trình 76

4.4.1 Màn hình chọn các địa điểm 76

gfsdsd sd sdsd dsd sd454 4545 4545xfdf def dtrrtrrtrt 454 454 545gd luan van do an khoa luan tot nghiep fdfd 454 dhfg fgfgf

Trang 11

luận văn thạc sĩ

Trang 12

luận văn thạc sĩ

9 Danh mục các từ viết tắt

gfsdsd sd sdsd dsd sd454 4545 4545xfdf def dtrrtrrtrt 454 454 545gd luan van do an khoa luan tot nghiep fdfd 454 dhfg fgfgf

Trang 13

luận văn thạc sĩ

Trang 14

luận văn thạc sĩ

Hình 3.2 Đồ thị áp dụng thuật toán Christofides 54

gfsdsd sd sdsd dsd sd454 4545 4545xfdf def dtrrtrrtrt 454 454 545gd luan van do an khoa luan tot nghiep fdfd 454 dhfg fgfgf

Trang 15

luận văn thạc sĩ

Hiện nay có rất nhiều tài liệu, sách, giáo trình đã viết về lý thuyết đồ thị với những nội dung, đầy đủ giúp cho những người muốn nghiên cứu về lý thuyết đồ thị tham khảo Tuy nhiên hầu hết các tài liệu đều chỉ nghiên cứu về lý thuyết và xây dựng các thuật toán chung cho các bài toán mà chưa có tài liệu viết về các ứng dụng các thuật toán để giải các bài toán ứng dụng cụ thể

Bài toán cây bao trùm nhỏ nhất là bài toán có vai trò trung tâm trong lý thuyết tối ưu tổ hợp, nẩy sinh trong nhiều ứng dụng và xuất hiện như một bài toán con trong nhiều bài toán về hình học và tổ hợp Bài toán này quan trọng không chỉ vì nó là mô hình cơ bản trong lý thuyết tối ưu về mạng mà còn vì nó được dùng như một hình mẫu điển hình trong tối ưu tổ hợp đã kích thích nhiều hướng nghiên cứu mới

Với sự xuất hiện ngày càng nhiều các hệ thống như: hệ thống mạng điện, mạng sản xuất và phân phối hàng hóa, mạng giao thông, nếu độ dài của của cạnh biểu thị chi phí (đi lại, vận chuyển hàng hóa, bưu phẩm, chi phí, ) giữa hai đầu mút của cạnh đó, thì chi phí trên cây bao trùm được xác định bằng tổng chi phí của

mọi cạnh thuộc đường duy nhất trên cây nối chúng Vì vậy, tôi đã chọn đề tài “BÀI TOÁN CÂY BAO TRÙM TRÊN ĐỒ THỊ VÀ ỨNG DỤNG” để nghiên cứu

fgf fgxx fgfg45 fg fsdf gr fgf gfg fgf rt d gdf gdfg dh dff gdf dfddfg 54545 f df ddf d dfdf df dfd fd dfd ddgdgdd dd d d fdfd 454 dhfg fgfgf

gfsdsd sd sdsd dsd sd454 4545 4545xfdf def dtrrtrrtrt 454 454 545gd luan van do an khoa luan tot nghiep fdfd 454 dhfg fgfgf

Trang 16

luận văn thạc sĩ

1.2 Mục đích, đối tượng và phạm vi nghiên cứu

Từ động cơ nghiên cứu nêu trên luận án tìm hiểu các định nghĩa và khái niệm cơ bản thường dùng trong lý thuyết đồ thị Tìm hiểu các thuật toán về tìm cây bao trùm trên đồ thị: thuật toán Borůvka, thuật toán Prim và thuật toán Kruskal Nghiên cứu bài toán người du lịch dựa vào cây bao trùm nhỏ nhất Đây là vấn đề trọng tâm và là mục tiêu nghiên cứu của luận án

1.3 Ý nghĩa khoa học và thực tiễn của đề tài

Luận văn này tập trung chủ yếu vào bài toán cây bao trùm nhỏ nhất và một số mở rộng của nó Bài toán này khá đơn giản, có nhiều thuật toán giải hiệu quả và có nhiều ứng dụng phong phú, đồng thời gợi mở nhiều vấn đề lý thú Ngoài ra, luận văn giới thiệu khái quát những khái niệm cơ bản của lý thuyết đồ thị

1.4 Cấu trúc của luận văn Luận văn bao gồm 5 chương:

Chương 1: Mở đầu, trình bày lý do chọn đề tài, mục tiêu, phạm vi và những

đóng góp chính của luận văn; giới thiệu cấu trúc của luận văn

Chương 2: Khái niệm cơ bản về lý thuyết đồ thị, trình bày những định

nghĩa và khái niệm cơ bản thường dùng trong lý thuyết đồ thị, đặc biệt là các khái niệm về cây bao trùm của một đồ thị và một số tính chất cơ bản của chúng

Chương 3: Bài toán cây bao trùm nhỏ nhất, Chương này đề cập tới bài toán

cây bao trùm nhỏ nhất, giới thiệu một số ứng dụng trực tiếp của nó, trình bày ba thuật toán nổi tiếng giải bài toán và cuối cùng đề cập tới một số bài toán có liên quan đến cây

Chương 4: Ứng dụng thuật toán Christofides vào bài toán người du lịch,

Trong chương này tôi xây dựng website có chức năng chọn các địa điểm cần đến, tính khoảng giữa các địa điểm, đưa ra giải pháp tìm chu trình đi qua các địa điểm

gfsdsd sd sdsd dsd sd454 4545 4545xfdf def dtrrtrrtrt 454 454 545gd luan van do an khoa luan tot nghiep fdfd 454 dhfg fgfgf

Trang 17

luận văn thạc sĩ

Chương 5: Kết luận và kiến nghị, là phần tổng kết, trong đó trình bày tóm

lược kết quả luận văn và những đề nghị liên quan đến luận văn

Danh mục tài liệu tham khảo Phụ lục

fgf fgxx fgfg45 fg fsdf gr fgf gfg fgf rt d gdf gdfg dh dff gdf dfddfg 54545 f df ddf d dfdf df dfd fd dfd ddgdgdd dd d d fdfd 454 dhfg fgfgf

gfsdsd sd sdsd dsd sd454 4545 4545xfdf def dtrrtrrtrt 454 454 545gd luan van do an khoa luan tot nghiep fdfd 454 dhfg fgfgf

Trang 18

luận văn thạc sĩ

Chương 2 KHÁI NIỆM CƠ BẢN VỀ ĐỒ THỊ

Chương này trình bày những định nghĩa và khái niệm cơ bản thường dùng trong lý thuyết đồ thị, đặc biệt là các khái niệm về cây bao trùm của một đồ thị và một số tính chất cơ bản của chúng Nội dung trình bày ở chương này chủ yếu dựa vào các tài liệu [1], [2], [3] và [5]

Lý thuyết đồ thị là ngành toán học hiện đại có ứng dụng quan trọng trong nhiều ngành khoa học, kỹ thuật hiện đại: vật lý, hóa học, sinh học, tin học, điều khiển học, …, tư tưởng cơ bản của lý thuyết đồ thị được đề xuất vào những năm đầu của thế kỷ 18 bởi nhà toán học lỗi lạc người Thụy Sỹ Lenhard Eurler Chính ông là người sử dụng đồ thị để giải bài toán nổi tiếng về các cái cầu ở thành phố Konigsberg

2.1 Một số khái niệm 2.1.1 Khái niệm đồ thị

Có thể hiểu đồ thị là một tập hợp các điểm, gọi là nút hay đỉnh và một tập hợp các đoạn (thẳng hay cong) nối liền một số cặp điểm này, gọi là cạnh hay cung

của đồ thị Mỗi đỉnh của đồ thị thường được ký hiệu bằng các chữ cái a,b,c…hoặc các chữ số 1, 2, 3… Cạnh nối đỉnh i với j được ký hiệu là (i,j) Một cạnh có dạng

(a,a) gọi là một khuyên Nếu đồ thị G có tập đỉnh là V và tập cạnh là E thì ta viết G

= (V,E) Ta cũng dùng ký hiệu V(G) để chỉ tập đỉnh và E(G) để chỉ tập cạnh của đồ thị G Ký hiệu n =| V(G)| là số đỉnh và m = |E(G)| là số cạnh của đồ thị

gfsdsd sd sdsd dsd sd454 4545 4545xfdf def dtrrtrrtrt 454 454 545gd luan van do an khoa luan tot nghiep fdfd 454 dhfg fgfgf

Trang 19

luận văn thạc sĩ

Một cạnh của đồ thị gọi là cạnh có hướng nếu có quy định rõ một mút của cạnh là đỉnh đầu, còn mút kia là đỉnh cuối Cạnh có hướng gọi là cung, cung đi từ

Trang 20

luận văn thạc sĩ

hỗn hợp Bằng cách thay một cạnh bởi hai cung có hướng ngược chiều nhau, ta có

thể quy mọi đồ thị về đồ thị có hướng, hình 2.2 mô tả một đồ thị có hướng

Hai cạnh e và e‟ cùng nối liền hai đỉnh như nhau gọi là cạnh kép Đồ thị không có cạnh kép gọi là một đơn đồ thị Trái lại, gọi là đa đồ thị

Trong các phần tiếp theo chủ yếu chúng ta sẽ làm việc với đơn đồ thì vô hướng và đơn đồ thị có hướng Vì vậy, để cho ngắn gọn, ta sẽ bỏ qua tính từ đơn khi nhắc đến chúng

2.1.2 Các thuật ngữ cơ bản

Trong mục này sẽ trình bày một số thuật ngữ cơ bản của lý thuyết đồ thị Trước tiên ta xét các thuật ngữ mô tả các đỉnh và cạnh của đồ thị vô hướng

Định nghĩa 2.1: Hai đỉnh u và v của đồ thị vô hướng G được gọi là kề nhau

nếu (u,v) là cạnh của đồ thị G Nếu e = (u,v) là cạnh của đồ thị ta nói cạnh này liên thuộc với hai đỉnh u và v, hoặc cũng nói là nối đỉnh u và đỉnh v, đồng thời các đỉnh u và v sẽ được gọi là các đỉnh đầu của cạnh (u,v)

Để có thể biết có bao nhiêu cạnh liên thuộc một đỉnh, ta đưa vào định nghĩa sau :

Định nghĩa 2.2: Ta gọi bậc của đỉnh v trong đồ thị vô hướng là số cạnh liên

thuộc với nó và sẽ ký hiệu là deg(v)

Trang 21

luận văn thạc sĩ

deg(a)= deg (d) = 1, deg(b)=deg(c)= 4, deg(f)= deg(e)= 3, deg (g) = 0

Đỉnh bậc 0 gọi là đỉnh cô lập Đỉnh bậc 1 được gọi là đỉnh treo Trong đồ thị

trên đỉnh a, d là đỉnh treo còn đỉnh g là đỉnh cô lập

Định lý 2.1: Giả sử G = (V,E) là đồ thị vô hướng với m cạnh Khi đó tổng bậc

của tất cả các đỉnh bằng hai lần số cạnh

Chứng minh: Rõ ràng mỗi cạnh e = (u,v) được tính một lần trong deg(u) và một lần trong deg(v) Từ đó suy ra tổng tất cả các bậc của các đỉnh bằng hai lần số cạnh

Hệ quả 2.1: Trong đồ thị vô hướng, số đỉnh bậc lẻ ( nghĩa là có bậc là số lẻ) là một số chẵn

Chứng minh: Thực vậy, gọi O và U tương ứng là tập đỉnh bậc lẻ và tập đỉnh

bậc chẵn của đồ thị Ta có theo định lý 2.1: deg (O) +deg (U) = 2m, trong đó m là số cạnh của đồ thị, do U là tập đỉnh bậc chẵn nên deg( U) sẽ là một số chẵn vì nó là tổng các số chẵn

Do đó deg (O) cũng sẽ là một số chẵn vì deg (U) và 2m là số chẵn

Mà O là tập đỉnh bậc lẻ và deg (O) là số chẵn nên deg (O) sẽ là tổng của một số chẵn các số hạng Vì vậy, số đỉnh bậc lẻ phải là số chẵn

Định nghĩa 2.3: Nếu e = (u,v) là cung của đồ thị có hướng G thì ta có hai

đỉnh u và v kề nhau, và nói cung (u, v) nối đỉnh u với đỉnh v hoặc cũng nói cung này là đi ra khỏi đỉnh u và vào đỉnh v Đỉnh u(v) sẽ được gọi là đỉnh đầu (cuối) của cung (u, v)

Tương tự như khái niệm bậc, đối với đồ thị có hướng ta có khái niệm bán bậc ra và bán bậc vào của một đỉnh

Định nghĩa 2.4: Ta gọi bán bậc ra (bán bậc vào) của đỉnh v trong đồ thị có

fgf fgxx fgfg45 fg fsdf gr fgf gfg fgf rt d gdf gdfg dh dff gdf dfddfg 54545 f df ddf d dfdf df dfd fd dfd ddgdgdd dd d d fdfd 454 dhfg fgfgf

gfsdsd sd sdsd dsd sd454 4545 4545xfdf def dtrrtrrtrt 454 454 545gd luan van do an khoa luan tot nghiep fdfd 454 dhfg fgfgf

Trang 22

luận văn thạc sĩ

Hình 2.4 Bán bậc ra (bán bậc vảo) đồ thị có hướng Xét đồ thị cho trong hình 2.4 Ta có :

deg–(a) = 1, deg–(b) = 2, deg–(c) = 2, deg–(d) = 2, deg–(e) = 2 deg+(a) = 3, deg+(b) = 1, deg+(c) = 1, deg+(d) = 2, deg+(e) = 2 Tương tự như khái niệm bậc của đồ thị vô hướng ta có định lý sau:

Định lý 2.2: Giả sử G = (V,E) là đồ thị có hướng với m cạnh Khi đó tổng của

tất cả các bán bậc vào và bán bậc ra bằng hai lần số cạnh 2.1.3 Đường đi, chu trình và đồ thị liên thông

Đường P từ đỉnh u tới đỉnh v là một dãy liên tiếp các cạnh có dạng :

(a0, a1), (a1, a2), (a2, a3), …(ak-1, ak), với a0 = u, ak = v và k≥ 0, trong đó các đỉnh a0, a1, …ak đều khác nhau Để đơn giản, đôi khi ta viết P={ a0, a1, …ak} và nói đó là đường nối đỉnh u và đỉnh v Đỉnh u gọi là đỉnh đầu, đỉnh v gọi là đỉnh cuối của

P Với x,y ∈ V(P) (tập các đỉnh thuộc đường P), ta ký hiệu P[x,y] là đồ thị con của

P mà nó là đường trong P đi từ x tới y Một đường nối một đỉnh tới chính nó (đỉnh

đầu trùng với đỉnh cuối) gọi là một chu trình Độ dài của đường (chu trình) là số cạnh của đường (chu trình ) đó Đường đi hay chu trình được gọi là đơn nếu

nhưkhông có cạnh nào bị lặp lại

Trên đồ thị vô hướng cho trong hình 2.5: a, d, c, f, e là đường đi đơn độ dài 4

Còn d, e, c, a không là đường đi, do (c, e) không phải là cạnh của đồ thị Dãy b, c,

gfsdsd sd sdsd dsd sd454 4545 4545xfdf def dtrrtrrtrt 454 454 545gd luan van do an khoa luan tot nghiep fdfd 454 dhfg fgfgf

Trang 23

luận văn thạc sĩ

Trong thực tế, xét một mạng máy tính Một câu hỏi đặt ra là hai máy bất kỳ trong mạng này có thể trao đổi thông tin với nhau hoặc là trực tiếp qua kênh nối chúng hoặc thông qua một vài máy tính trung gian trong mạng? Nếu sử dụng đồ thị để biểu diễn mạng máy tính này (trong đó các đỉnh của đồ thị tương ứng với các máy tính, còn các cạnh tương ứng với các kênh nối) câu hỏi đó được phát biểu trong ngôn ngữ đồ thị như sau: Tồn tại hay không đường đi giữa mọi cặp đỉnh của đồ thị Ta đi đến định nghĩa sau :

Định nghĩa 2.5: Đồ thị vô hướng G=(V,E) được gọi là liên thông nếu luôn

tìm được đường đi giữa hai đỉnh bất kỳ của nó

Như vậy hai máy tính bất kỳ trong mạng có thể trao đổi thông tin được với nhau khi và chỉ khi đồ thị tương ứng với mạng này là đồ thị liên thông

Trong hình 2.6 : Đồ thị G là liên thông, còn đồ thị H là không liên thông

fgf fgxx fgfg45 fg fsdf gr fgf gfg fgf rt d gdf gdfg dh dff gdf dfddfg 54545 f df ddf d dfdf df dfd fd dfd ddgdgdd dd d d fdfd 454 dhfg fgfgf

gfsdsd sd sdsd dsd sd454 4545 4545xfdf def dtrrtrrtrt 454 454 545gd luan van do an khoa luan tot nghiep fdfd 454 dhfg fgfgf

Trang 24

luận văn thạc sĩ

Hình 2.6 Đồ thị liên thông G và không liên thông H

Định nghĩa 2.6: Ta gọi đồ thị con của đồ thị G = (V, E) là đồ thị H = (W, F),

trong đó W⊆ V, F ⊆ E

Trong trường hợp đồ thị là không liên thông, nó sẽ rã ra thành một số đồ thị con liên thông đôi một không có đỉnh chung Những đồ thị con liên thông như vậy

ta sẽ gọi là các thành phần liên thông của đồ thị

Đồ thị H trong hình 2.6 gồm 3 thành phần liên thông H1, H2, H3

Trong mạng máy tính có thể có những máy (những kênh nối) mà sự hỏng hóc của nó sẽ ảnh hưởng đến việc trao đổi thông tin trong mạng Các khái niệm tương ứng với tình huống này sẽ được đưa ra trong định nghĩa sau:

Định nghĩa 2.7: Đỉnh v được gọi là đỉnh rẽ nhánh (đỉnh cắt, đỉnh khớp) nếu

việc loại bỏ v cùng với các cạnh liên thuộc với nó khỏi đồ thị làm tăng số thành

phần liên thông của đồ thị Cạnh e được gọi là cạnh cắt (cầu ) nếu việc loại bỏ nó

khỏi đồ thị làm tăng số thành phần liên thông của đồ thị

Trong đồ thị G ở hình 2.6, đỉnh d và e là đỉnh rẽ nhánh, còn các cạnh (d, f) và

(e, g) là cầu

Đối với đồ thị có hướng có hai khái niệm liên thông phụ thuộc vào việc ta có xét đến hướng trên các cung hay không

Định nghĩa 2.8: Đồ thị có hướng G= (V, A) được gọi là liên thông mạnh nếu

luôn tìm được đường đi giữa hai đỉnh bất kỳ của nó

gfsdsd sd sdsd dsd sd454 4545 4545xfdf def dtrrtrrtrt 454 454 545gd luan van do an khoa luan tot nghiep fdfd 454 dhfg fgfgf

Trang 25

luận văn thạc sĩ

Định nghĩa 2.9: Đồ thị có hướng G = (V, A) được gọi là liên thông yếu nếu

đồ thị vô hướng tương ứng với nó là vô hướng liên thông

Rõ ràng, nếu đồ thị là liên thông mạnh thì nó cũng là liên thông yếu, nhưng điều ngược lại là không luôn đúng, như chỉ ra trong đồ thị dưới đây

Trong hình 2.7, đồ thị G là liên thông mạnh, còn H là liên thông yếu

Hình 2.7 Đồ thị liên thông mạnh G, đồ thị liên thông yếu H

Một câu hỏi đặt ra là khi nào có thể định hướng các cạnh của một đồ thị vô hướng liên thông để có thể thu được đồ thị có hướng liên thông mạnh? Ta sẽ gọi đồ

thị như vậy là đồ thị định hướng được

Định lý 2.3: Đồ thị vô hướng liên thông là định hướng được khi và chỉ khi

mỗi cạnh của nó nằm trên ít nhất một chu trình

Chứng minh:

Điều kiện cần: Giả sử (u, v) là một cạnh của đồ thị Từ sự tồn tại đường đi có

hướng từ u đến v và ngược lại suy ra (u, v) phải nằm ít nhất trên một chu trình

Điều kiện đủ: Thủ tục sau đây cho phép định hướng các cạnh của đồ thị để

thu được đồ thị có hướng liên thông mạnh Giả sử C là một chu trình nào đó trong đồ thị Định hướng các cạnh trên chu trình này theo một hướng đi vòng theo nó Nếu tất cả các cạnh của đồ thị là đã được định hướng thì kết thúc thủ tục Ngược lại, chọn e là một cạnh chưa định hướng có chung đỉnh với ít nhất một trong số các cạnh đã định hướng Theo giả thiết tìm được chu trình C‟ chứa cạnh e Định hướng

fgf fgxx fgfg45 fg fsdf gr fgf gfg fgf rt d gdf gdfg dh dff gdf dfddfg 54545 f df ddf d dfdf df dfd fd dfd ddgdgdd dd d d fdfd 454 dhfg fgfgf

gfsdsd sd sdsd dsd sd454 4545 4545xfdf def dtrrtrrtrt 454 454 545gd luan van do an khoa luan tot nghiep fdfd 454 dhfg fgfgf

Trang 26

luận văn thạc sĩ

các cạnh chưa được định hướng của C‟ theo một hướng dọc theo chu trình này (không định hướng lại các cạnh đã có định hướng) Thủ tục trên sẽ được lặp lại cho đến khi tất cả các cạnh của đồ thị được định hướng Khi đó ta thu được đồ thị có hướng liên thông mạnh

2.1.4 Một số dạng đồ thị đặc biệt

a/ Đồ thị đầy đủ

Đồ thị đầy đủ là đơn đồ thị vô hướng mà giữa hai đỉnh bất kỳ của nó luôn có

một cạnh nối Đồ thị đầy đủ n đỉnh ký hiệu là Kn và có tất cả n(n-1) / 2 cạnh Các đồ

gfsdsd sd sdsd dsd sd454 4545 4545xfdf def dtrrtrrtrt 454 454 545gd luan van do an khoa luan tot nghiep fdfd 454 dhfg fgfgf

Trang 27

luận văn thạc sĩ

c/ Đồ thị vòng

Đồ thị vòng Cn, n ≥ 3, gồm n đỉnh v1, v2, …, vn và các cạnh (v1, v2), (v2, v3),… (vn-1, vn), (vn, v1)

Trang 28

luận văn thạc sĩ

Hình 2.12 Đồ thị lập phương Q1, Q2, Q32.2 Biểu diễn đồ thị và tìm kiếm trên đồ thị

2.2.1 Biểu diễn đồ thị

a/ Ma trận kề

Nếu các đỉnh của đồ thị được đánh số liên tiếp từ 1 đến n thì đồ thị có thể

được biểu diễn bởi một ma trận vuông cấp n, gọi là ma trận kề Cho đồ thị G = (V,

E), ma trận kề của đồ thị G được định nghĩa là ma trận M= [mij ] với 1 nếu đỉnh i kề với đỉnh j,

mij =

0 nếu trái lại

gfsdsd sd sdsd dsd sd454 4545 4545xfdf def dtrrtrrtrt 454 454 545gd luan van do an khoa luan tot nghiep fdfd 454 dhfg fgfgf

Trang 29

luận văn thạc sĩ

Trong cách biểu diễn này mỗi cạnh (cung) e = (x, y) của đồ thị sẽ được lưu giữ nhờ hai biến nguyên Dau (e), Cuoi (e) Nhược điểm của cách biểu diễn này là khó xác định các đỉnh của đồ thị kề với một đỉnh cho trước

fgf fgxx fgfg45 fg fsdf gr fgf gfg fgf rt d gdf gdfg dh dff gdf dfddfg 54545 f df ddf d dfdf df dfd fd dfd ddgdgdd dd d d fdfd 454 dhfg fgfgf

gfsdsd sd sdsd dsd sd454 4545 4545xfdf def dtrrtrrtrt 454 454 545gd luan van do an khoa luan tot nghiep fdfd 454 dhfg fgfgf

Trang 30

luận văn thạc sĩ

Danh sách kề của đồ thị ở hình 2.13 là (0 chỉ hết danh sách)

gfsdsd sd sdsd dsd sd454 4545 4545xfdf def dtrrtrrtrt 454 454 545gd luan van do an khoa luan tot nghiep fdfd 454 dhfg fgfgf

Trang 31

luận văn thạc sĩ

2.2.2 Các thuật toán tìm kiếm trên đồ thị

Nhiều thuật toán trên đồ thị được xây dựng trên cơ sở duyệt (thăm, xét…) tất cả các đỉnh của đồ thị theo thứ tự sao cho mỗi đỉnh được thăm đúng một lần (không trùng lặp và không bỏ sót) Những thuật toán như vậy sẽ được gọi là các thuật toán tìm kiếm (Search Algorithms) trên đồ thị Trong mục này chúng ta sẽ giới thiệu hai thuật toán tìm kiếm cơ bản trên đồ thị: Đó là thuật toán tìm kiếm theo chiều sâu (Depth First Search) và thuật toán tìm kiếm theo chiều rộng (Breadth First Search)

a/ Tìm kiếm theo chiều sâu (DFS = Depth First Search)

Ý tưởng chính của thuật toán có thể trình bày như sau Ta sẽ bắt đầu tìm kiếm từ một đỉnh v0 nào đó của đồ thị Sau đó chọn u là một đỉnh tuỳ ý kề với v0 và lặp lại quá trình đối với u Ở bước tổng quát, giả sử ta đang xét đỉnh v Nếu như trong số các đỉnh kề với v tìm được đỉnh w là chưa được xét thì ta sẽ xét đỉnh này (nó sẽ trở thành đã xét) và bắt đầu từ nó ta sẽ bắt đầu quá trình tìm kiếm còn nếu như không còn đỉnh nào kề với v là chưa xét thì ta nói rằng đỉnh này đã duyệt xong và quay trở lại tiếp tục tìm kiếm từ đỉnh mà trước đó ta đến được đỉnh v (nếu v=v0, thì kết thúc tìm kiếm) Có thể nói tìm kiếm theo chiều sâu bắt đầu từ đỉnh v được thực hiện trên cơ sở tìm kiếm theo chiều sâu từ tất cả các đỉnh chưa xét kề với v

Trang 32

luận văn thạc sĩ

Hình 2.14 Tìm kiếm theo chiều sâu

Chỉ số mới (trong ngoặc) của các đỉnh được đánh lại theo thứ tự chúng được thăm trong thuật toán tìm kiếm theo chiều sâu Giả thiết rằng các đỉnh trong danh sách kề của đỉnh v (Ke(v)) được sắp xếp theo thứ tự tăng dần của chỉ số

Thuật toán tìm kiếm theo chiều sâu trên đồ thị vô hướng trình bày ở trên dễ dàng có thể mô tả lại cho đồ thị có hướng Trong trường hợp đồ thị có hướng, thủ tục DFS(v) sẽ cho phép thăm tất cả các đỉnh u nào mà từ v có đường đi đến u

b/ Tìm kiếm theo chiều rộng ( BFS = Breadth first Search )

Để ý rằng trong thuật toán tìm kiếm theo chiều sâu đỉnh được thăm càng muộn sẽ càng sớm trở thành đã duyệt xong Điều đó là hệ quả tất yếu của việc các đỉnh được thăm sẽ được kết nạp vào trong ngăn xếp (STACK) Tìm kiếm theo chiều rộng trên đồ thị, nếu nói một cách ngắn gọn, được xây dựng trên cơ sở thay thế ngăn xếp (STACK) bởi hàng đợi (QUEUE) Với sự cải biên như vậy, đỉnh được thăm càng sớm sẽ càng sớm trở thành đã duyệt xong (tức là càng sớm dời khỏi hàng

Trang 33

luận văn thạc sĩ

đợi) Một đỉnh sẽ trở thành đã duyệt xong ngay sau khi ta xét xong tất cả các đỉnh kề (chƣa đƣợc thăm) với nó

Xét đồ thị xét trong hình 2.15, thứ tự thăm đỉnh của đồ thị theo thuật toán tìm

kiếm theo chiều rộng đƣợc ghi trong ngoặc 3 (11)

Định nghĩa 2.10: Chu trình đơn trong đồ thị G đi qua mỗi cạnh của nó một

lần được gọi là chu trình Euler Đường đi đơn trong G đi qua mỗi cạnh của nó một lần được gọi là đường đi Euler Đồ thị được gọi là đồ thị Euler nếu có chu trình Euler và gọi là đồ thị nửa Euler nếu có đường đi Euler

Rõ ràng mọi đồ thị Euler luôn là nửa Euler, nhƣng điều ngƣợc lại không luôn đúng

2 (2)

7 (6) 5 (9)

4 (3) 6 (5) 9 (13) 12 (4) 13(10)

11(8)

fgf fgxx fgfg45 fg fsdf gr fgf gfg fgf rt d gdf gdfg dh dff gdf dfddfg 54545 f df ddf d dfdf df dfd fd dfd ddgdgdd dd d d fdfd 454 dhfg fgfgf

gfsdsd sd sdsd dsd sd454 4545 4545xfdf def dtrrtrrtrt 454 454 545gd luan van do an khoa luan tot nghiep fdfd 454 dhfg fgfgf

Trang 34

luận văn thạc sĩ

Hình 2.16 Đồ thị Euler

Trong hình 2.16 đồ thị G1 là đồ thị Euler vì nó có chu trình Euler a, e, c, d, e,

b, a Đồ thị G2 không có chu trình Euler nhưng có đường đi Euler a, c, d, e, b, d, a, b vì thế G2 là đồ thị nửa Euler

Điều kiện cần và đủ để một đồ thị là một đồ thị Euler được Euler tìm ra vào năm 1736 khi ông giải quyết bài toán bài toán hóc búa nổi tiếng thế giới thời đó về bảy cái cầu ở thành phố Konigdberg và đây là định lý đầu tiên của lý thuyết đồ thị

Định lý 2.4 (Euler) Đồ thị vô hướng liên thông G là đồ thị Euler khi và chỉ

khi mọi đỉnh của G đều là có bậc chẵn

Để chứng minh định lý trước hết ta chứng minh bổ đề

Bổ đề 2.1: Nếu bậc của mỗi đỉnh của đồ thị G không nhỏ hơn 2 thì G chứa

chu trình

Chứng minh: Nếu G có cạnh lặp thì khẳng định của bổ đề là hiển nhiên Vì

vậy giả sử G là đơn đồ thị Gọi v là một đỉnh nào đó của G Ta sẽ xây dựng theo qui nạp đường đi

Trang 35

luận văn thạc sĩ

Trong đó v1 là đỉnh kề với v, do tập đỉnh của G là hữu hạn nên sau một số hữu hạn bước ta phải quay lại đỉnh đã xuất hiện trước đó Gọi đỉnh đầu tiên như thế là vk Khi đó đoạn của đường đi xây dựng nằm giữa hai đỉnh vk là chu trình cần tìm

Chứng minh định lý:

Điều kiện cần: Giả sử G là đồ thị Euler tức là tồn tại chu trình Euler P trong

G Khi đó cứ mỗi lần chu trình P đi qua một đỉnh nào đó của G bậc của đỉnh đó tăng lên 2 Mặt khác mỗi cạnh của đồ thị xuất hiện trong P đúng một lần, suy ra mỗi đỉnh của đồ thị đều là bậc chẵn

Điều kiện đủ: Quy nạp theo số đỉnh và số cạnh của G Do G liên thông và m(v) là số chẵn nên bậc của nó không nhỏ hơn 2 Từ đó theo bổ đề 2.1 G phải chứa

chu trình C Nếu C đi qua tất cả các cạnh của G thì nó chính là chu trình Euler Giả sử C không đi qua tất cả các cạnh của G, khi đó loại bỏ G tất cả các cạnh thuộc C ta thu được một đồ thị mới H vẫn là bậc chẵn Theo giả thiết qui nạp, trong mỗi thành phần liên thông của H đều tìm được chu trình Euler Do G là liên thông nên trong mỗi thành phần của H có ít nhất một đỉnh chung với chu trình C Vì vậy, ta có thể xây dựng chu trình Euler trong G như sau: bắt đầu từ một đỉnh nào đó của chu trình C, đi theo các cạnh của C chừng nào chưa gặp phải đỉnh không cô lập của H Nếu gặp phải đỉnh như vậy ta sẽ đi theo chu trình Euler của thành phần liên thông của H chứa đỉnh đó Sau đó lại tiếp tục đi theo cạnh của C cho đến khi gặp phải đỉnh không cô lập của H thì lại theo chu trình Euler của thành phần liên thông tương ứng trong H Quá trình kết thúc khi ta trở về đỉnh xuất phát, tức là thu được chu trình đi qua mỗi cạnh của đồ thị đúng một lần

Hệ quả 2.1: Đồ thị vô hướng liên thông G là nửa Euler khi và chỉ khi nó

không quá 2 đỉnh bậc lẻ

Chứng minh: Thực vây, nếu G có không quá 2 đỉnh bậc lẻ thì số đỉnh bậc lẻ

của nó có thể là 0 hoặc 2 Nếu G không có đỉnh bậc lẻ thì theo định lý Euler nó là đồ thị Euler Giả sử G có 2 đỉnh bậc lẻ là u và v Gọi H là đồ thị thu được từ G bằng

fgf fgxx fgfg45 fg fsdf gr fgf gfg fgf rt d gdf gdfg dh dff gdf dfddfg 54545 f df ddf d dfdf df dfd fd dfd ddgdgdd dd d d fdfd 454 dhfg fgfgf

gfsdsd sd sdsd dsd sd454 4545 4545xfdf def dtrrtrrtrt 454 454 545gd luan van do an khoa luan tot nghiep fdfd 454 dhfg fgfgf

Trang 36

luận văn thạc sĩ

2.3.2 Đồ thị Hamilton

Định nghĩa 2.11: Đường đi qua tất cả các đỉnh của đồ thị mỗi đỉnh đúng một

lần được gọi là đường đi Hamilton Chu trình bắt đầu từ một đỉnh v nào đó qua tất cả các đỉnh còn lại mỗi đỉnh đúng một lần rồi quay trở về v được gọi là chu trình

Hamilton Đồ thị G được gọi là Hamilton nếu nó chứa chu trình Hamilton và gọi là

đồ thị nửa Hamilton nếu nó có đường đi Hamilton

Hình 2.17 Đồ thị Hamilton

Trong hình 2.17: G1 là nửa Hamilton còn G2 là Hamilton

Định lý 2.5: (Dirak 1952) Đơn đồ thị vô hướng G với n≥2 đỉnh, mỗi đỉnh có

bậc không nhỏ hơn n/2 là đồ thị Hamilton

Chứng minh: Thêm vào đồ thị G k đỉnh mới và nối chúng với tất cả các đỉnh

của G Giả sử k là số nhỏ nhất cần thêm vào để cho đồ thị thu đƣợc G‟ là đồ thị Hamilton Ta sẽ chỉ ra rằng k=0

Thực vậy, giả sử ngƣợc lại là k>0 Ký hiệu v, p, w, …, v là chu trình Hamilton trong G‟, trong đó v,w là đỉnh của G còn P là một trong số các đỉnh mới

gfsdsd sd sdsd dsd sd454 4545 4545xfdf def dtrrtrrtrt 454 454 545gd luan van do an khoa luan tot nghiep fdfd 454 dhfg fgfgf

Trang 37

luận văn thạc sĩ

Khi đó w không kề với v vì nếu ngược lại ta không cần sử dụng p và điều đó là mâu thuẫn với giả thiết k nhỏ nhất Hơn nữa đỉnh (w‟ chẳng hạn) kề với w không thể đi liền sau đỉnh v‟ (kề với v) vì rằng khi đó có thể thay

v  p  w …  v’ w‟… v

bởi v  v‟…  w  w‟ … v

Bằng cách đảo ngược đoạn chu trình nằm trong w và v‟ Từ đó suy ra là số đỉnh của đồ thị G‟ không kề với w là không nhỏ hơn số đỉnh kề với v (tức là ít nhất cũng là bằng n/2+k), đồng thời số đỉnh của G‟ kề với w ít ra là phải bằng n/2+k Do không có đỉnh nào của G‟ vừa không kề, lại vừa kề với w, cho nên tổng số đỉnh của đồ thị G‟ (G‟ có n+k đỉnh) không ít hơn n+2k Mâu thuẫn do đó đã chứng minh được định lý

2.4 Cây và cây bao trùm của đồ thị

Đồ thị vô hướng liên thông không có chu trình gọi là cây Khái niệm cây lần đầu tiên được Cayley đưa ra vào 1857, khi ông sử dụng chúng để đếm một dạng cấu trúc phân tử của các hợp chất hóa học trong hóa học hữu cơ Cây còn được sử dụng rộng rãi trong rất nhiều lĩnh vực khác nhau, đặc biệt trong tin học, cây được sử dụng để xây dựng các thuật toán tổ chức các thư mục, các thuật toán cất giữ, truyền dữ liệu và tìm kiếm

Định nghĩa 2.12: Ta gọi cây là một đồ thị vô hướng liên thông và không có

chu trình Đồ thị vô hướng gồm k thành phần liên thông mà mỗi thành phần liên

thông là một cây được gọi là rừng

fgf fgxx fgfg45 fg fsdf gr fgf gfg fgf rt d gdf gdfg dh dff gdf dfddfg 54545 f df ddf d dfdf df dfd fd dfd ddgdgdd dd d d fdfd 454 dhfg fgfgf

gfsdsd sd sdsd dsd sd454 4545 4545xfdf def dtrrtrrtrt 454 454 545gd luan van do an khoa luan tot nghiep fdfd 454 dhfg fgfgf

Trang 38

luận văn thạc sĩ

Định lý 2.6: Giả sử G = (V, E) là đồ thì vô hướng n đỉnh Khi đó các mệnh đề

sau đây là tương đương:

1) T là cây

2) T không chứa chu trình và có n-1 cạnh 3) T liên thông và có n-1 cạnh

4) T liên thông và mỗi cạnh của nó đều là cầu

5) Hai đỉnh bất kỳ của T được nối với nhau bởi đúng một đường đi đơn 6) T không chứa chu trình nhưng hễ cứ thêm vào một cạnh ta thu được

một chu trình

Chứng minh: ta sẽ chứng minh định lý theo sơ đồ sau:

(1)=>(2)=>(3)=>(4)=>(5)=>(6)=>(1)

(1)=>(2) theo định nghĩa T không chứa chu trình Ta sẽ chứng minh bằng qui

nạp theo số đỉnh n cho khẳng định: Số cạnh của cây với n đỉnh là n -1 Rõ ràng khẳng định đúng với n = 1 Giả sử n > 1 Trước hết nhận rằng trong mọi cây T có n

Trang 39

luận văn thạc sĩ

đỉnh đều tìm được ít nhất một đỉnh là đỉnh treo (tức là đỉnh có bậc là 1) Thực vậy, gọi v1,v2,…,vk là đường đi dài nhất (theo số cạnh) trong T Khi đó rõ ràng v1 và vk là các đỉnh treo, vì từ v1(vk) không có cạnh nối với bất cứ đỉnh nào trong số các đỉnh v2,v3,…,vk (do đồ thị không chứa chu trình), cũng như với bất cứ đỉnh nào khác của đồ thị (do đường đi đang xét dài nhất) Loại bỏ v1 và cạnh (v1,v2) khỏi T ta thu được cây T1 với n-1 đỉnh, mà theo giả thiết qui nạp có n-2 cạnh Vậy cây T có n-2+1=n-1 cạnh

(2) => (3) ta chứng minh bằng phản chứng Giả sử T không liên thông Khi đó

T phân rã thành k ≥ 2 phần liên thông T1,T2,…,Tk Do T không chứa chu trình nên mỗi Ti (i=1,2, ,k) cũng không chứa chu trình, vì thế mỗi Ti là cây Do đó nếu gọi n(Ti) và e(Ti) theo thứ tự là số đỉnh và cạnh của Ti, ta có:

e(Ti) = n(Ti)-1, i =1,2,3,…,k suy ra

n-1 = e(T) = e(T1) +…+ e(Tk) = n(T1) +…+ n(Tk)-k

= n(T) - k < n-1

Mâu thuẫn thu được chứng tỏ là T liên thông

(3) =>(4) Việc loại bỏ một cạnh bất kỳ khỏi T dẫn đến đồ thị với n đỉnh và n-2

cạnh rõ ràng là đồ thì không liên thông.vậy mọi cãnh trong T đều là cầu

(4) =>(5) Do T là liên thông nên hai đỉnh bất kỳ của nó được nối với nhau bởi

một đường đi đơn Nếu có cặp đỉnh nào của T có hai đường đi đơn khác nhau nối chúng, thì từ đó suy ra đồ thị chứa chu trình, và vì thế các cạnh trên chu trình này không phải là cầu

(5) =>(6) T không chứa chu trình, bởi vì thế nếu có chu trình thì hóa ra tìm

được cặp đỉnh của T được nối với nhau bởi hai đường đi đơn Bây giờ, nếu thêm vào T một cạnh e nối hai đỉnh u và v nào đó của T Khi đó cạnh này cùng với đường

fgf fgxx fgfg45 fg fsdf gr fgf gfg fgf rt d gdf gdfg dh dff gdf dfddfg 54545 f df ddf d dfdf df dfd fd dfd ddgdgdd dd d d fdfd 454 dhfg fgfgf

gfsdsd sd sdsd dsd sd454 4545 4545xfdf def dtrrtrrtrt 454 454 545gd luan van do an khoa luan tot nghiep fdfd 454 dhfg fgfgf

Trang 40

luận văn thạc sĩ

đi đơn nối u và v sẽ tạo thành chu trình trong T Chu trình thu được này là duy nhất, vì thế thu được nhiều hơn một chu trình thì suy ra trong T trước đó phải có sãn chu trình

(6) =>(1) Giả sử T không liên thông Khi đó gồm ít ra là thành phần liên thông

Vì vậy, nếu thêm vào T cạnh nối hai đỉnh thuộc hai thành phần liên thông khác nhau ta không thu được thêm một chu trình nào cả Điều đó mâu thuẫn với giả thiết (6) định lý được chứng minh

Tóm lại Chương này đã đề cập tới những khái niệm về đồ thị có liên quan

đến bài toán cây bao trùm nhỏ nhất được xét ở các chương sau Cụ thể, đã trình bày và giải thích các khái niệm về đồ thị (vô hướng, có hướng), đỉnh và cạnh (cung), đường và chu trình trong đồ thị, chu trình Euler, chu trình Hamilton

gfsdsd sd sdsd dsd sd454 4545 4545xfdf def dtrrtrrtrt 454 454 545gd luan van do an khoa luan tot nghiep fdfd 454 dhfg fgfgf

Ngày đăng: 24/05/2024, 14:24

Tài liệu liên quan