đọ ư ường đi Euler... đọ ư ường đi Hamilton.
Trang 1CH ƯƠ NG IV
4.1 Đ ƯỜ NG ĐI EULER VÀ Đ TH EULER Ồ Ị
Có th coi năm 1736 là năm khai sinh lý thuy t đ th , v i vi c công b l i gi iể ế ồ ị ớ ệ ố ờ ả
“bài toán v các c u Konigsberg” c a nhà toán h c l i l c Euler (1707-1783) Thànhề ầ ở ủ ọ ỗ ạ
ph Konigsberg thu c Ph (nay g i là Kaliningrad thu c Nga) đố ộ ổ ọ ộ ược chia thành b nố vùng b ng các nhánh sông Pregel, các vùng này g m hai vùng bên b sông, đ oằ ồ ờ ả Kneiphof và m t mi n n m gi a hai nhánh c a sông Pregel Vào th k 18, ngộ ề ằ ữ ủ ế ỷ ười ta xây b y chi c c u n i các vùng này v i nhau.ả ế ầ ố ớ
G
Dân thành ph t ng th c m c: “Có th nào đi d o qua t t c b y c u, m i c uố ừ ắ ắ ể ạ ấ ả ả ầ ỗ ầ
ch m t l n thôi không?” N u ta coi m i khu v c A, B, C, D nh m t đ nh và m i c uỉ ộ ầ ế ỗ ự ư ộ ỉ ỗ ầ qua l i hai khu v c là m t c nh n i hai đ nh thì ta có s đ c a Konigsberg là m t đaạ ự ộ ạ ố ỉ ơ ồ ủ ộ
đ th G nh hình trên.ồ ị ư
Bài toán tìm đường đi qua t t c các c u, m i c u ch qua m t l n có th đấ ả ầ ỗ ầ ỉ ộ ầ ể ượ c phát bi u l i b ng mô hình này nh sau: Có t n t i chu trình đ n trong đa đ th Gể ạ ằ ư ồ ạ ơ ồ ị
ch a t t c các c nh?ứ ấ ả ạ
4.1.1 Đ nh nghĩa: ị Chu trình (t đư ường đi) đ n ch a t t c các c nh (ho c cung)ơ ứ ấ ả ạ ặ
c a đ th (vô hủ ồ ị ướng ho c có hặ ướng) G được g i là chu trình (t đọ ư ường đi) Euler
M t đ th liên thông (liên thông y u đ i v i đ th có hộ ồ ị ế ố ớ ồ ị ướng) có ch a m t chu trìnhứ ộ (t đư ường đi) Euler được g i là đ th Euler (t n a Euler).ọ ồ ị ư ử
Thí d 1: ụ
Đ th không n a Eulerồ ị ử
Đ th n a Eulerồ ị ử
A D
B
C
C B
Đ th Eulerồ ị
Trang 2
Đ th Euler Đ th n a Eulerồ ị ồ ị ử
Đi u ki n c n và đ đ m t đ th là đ th Euler đề ệ ầ ủ ể ộ ồ ị ồ ị ược Euler tìm ra vào năm
1736 khi ông gi i quy t bài toán hóc búa n i ti ng th i đó v b y cái c u Konigsbergả ế ổ ế ờ ề ả ầ ở
và đây là đ nh lý đ u tiên c a lý thuy t đ th ị ầ ủ ế ồ ị
4.1.2 Đ nh lý: ị Đ th (vô hồ ị ướng) liên thông G là đ th Euler khi và ch khi m i đ nhồ ị ỉ ọ ỉ
c a G đ u có b c ch n.ủ ề ậ ẵ
Ch ng minh: ứ
Đ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 thì 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 Do đó m i đ nh c aặ ỗ ạ ủ ồ ị ấ ệ ộ ầ ỗ ỉ ủ
đ th đ u có b c ch n.ồ ị ề ậ ẵ
4.1.3 B đ : ổ ề 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 đ n.ơ
Ch ng minh: ứ N u G có c nh b i ho c có khuyên thì kh ng đ nh c a b đ là hi nế ạ ộ ặ ẳ ị ủ ổ ề ể nhiên Vì v y gi s G là m t đ n đ th G i v là m t đ nh nào đó c a G Ta s xâyậ ả ử ộ ơ ồ ị ọ ộ ỉ ủ ẽ
d ng theo quy n p đự ạ ường đi
trong đó v1 là đ nh k v i v, còn v i i ỉ ề ớ ớ ≥ 1, ch n vọ i+1 là đ nh k v i vỉ ề ớ i và vi+1 ≠ vi - 1 (có
th ch n nh v y vì deg(vể ọ ư ậ i) ≥ 2), v0 = 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 m t đ nh đã xu t hi n trả ạ ộ ỉ ấ ệ ước đó G i k là s nguyênọ ố
dương đ u tiên đ vầ ể k=vi (0≤i<k) Khi đó, đường đi vi, vi+1, , vk - 1, vk (= vi) là m t chuộ trình đ n c n tìm.ơ ầ
Đi u ki n đ : ề ệ ủ Quy n p theo s c nh c a G Do G liên thông và b c c a m i đ nh làạ ố ạ ủ ậ ủ ọ ỉ
ch n nên m i đ nh có b c không nh h n 2 T đó theo B đ 4.1.3, G ph i ch a m tẵ ỗ ỉ ậ ỏ ơ ừ ổ ề ả ứ ộ chu trình đ n 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 kh i G các c nh thu c C, taử ấ ả ạ ủ ạ ỏ ỏ ạ ộ thu được m t đ th m i H (không nh t thi t là liên thông) S c nh trong H nh h nộ ồ ị ớ ấ ế ố ạ ỏ ơ trong G và rõ ràng m i đ nh c a H v n có b c là ch n Theo gi thi t quy 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 liên thông nên
2
.
Trang 3m i thành ph n trong 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 thì ta đ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 s 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.ỗ ạ ủ ồ ị ộ ầ
4.1.4 H qu : ệ ả Đ th liên thông G là n a Euler (mà không là Euler) khi và ch khi cóồ ị ử ỉ đúng hai đ nh b c l trong G.ỉ ậ ẻ
Ch ng minh: ứ N u G là n a Euler thì t n t i m t đế ử ồ ạ ộ ường đi Euler trong G t đ nh u đ nừ ỉ ế
đ nh v G i G’ là đ th thu đỉ ọ ồ ị ượ ừc t G b ng cách thêm vào c nh (u,v) Khi đó G’ là đằ ạ ồ
th Euler nên m i đ nh trong G’ đ u có b c ch n (k c u và v) Vì v y u và v là haiị ọ ỉ ề ậ ẵ ể ả ậ
đ nh duy nh t trong G có b c l ỉ ấ ậ ẻ
Đ o l i, n u có đúng hai đ nh b c l là u và v thì g i G’ là đ th thu đả ạ ế ỉ ậ ẻ ọ ồ ị ượ ừ c t G
b ng cách thêm vào c nh (u,v) Khi đó m i đ nh c a G’ đ u có b c ch n hay G’ là đằ ạ ọ ỉ ủ ề ậ ẵ ồ
th Euler B c nh (u,v) đã thêm vào ra kh i chu trình Euler trong G’ ta có đị ỏ ạ ỏ ược đườ ng
đi Euler t u đ n v trong G hay G là n a Euler.ừ ế ử
4.1.5 Chú ý: Ta có th v ch để ạ ược m t chu trình Euler trong đ th liên thông G cóộ ồ ị
b c c a m i đ nh là ch n theo thu t toán Fleury sau đây.ậ ủ ọ ỉ ẵ ậ
Xu t phát t m t đ nh b t kỳ c a G và tuân theo hai quy t c sau:ấ ừ ộ ỉ ấ ủ ắ
1 M i khi đi qua m t c nh nào thì xoá nó đi; sau đó xoá đ nh cô l p (n u có);ỗ ộ ạ ỉ ậ ế
2 Không bao gi đi qua m t c u, tr phi không còn cách đi nào khác.ờ ộ ầ ừ
Trang 4Xu t phát t u, ta có th đi theo c nh (u,v) ho c (u,x), gi s là (u,v) (xoá (u,v)).ấ ừ ể ạ ặ ả ử
T v có th đi qua m t trong các c nh (v,w), (v,x), (v,t), gi s (v,w) (xoá (v,w)) Ti pừ ể ộ ạ ả ử ế
t c, có th đi theo m t trong các c nh (w,s), (w,y), (w,z), gi s (w,s) (xoá (w,s)) Điụ ể ộ ạ ả ử theo c nh (s,y) (xoá (s,y) và s) Vì (y,x) là c u nên có th đi theo m t trong hai c nhạ ầ ể ộ ạ (y,w), (y,z), gi s (y,w) (xoá (y,w)) Đi theo (w,z) (xoá (w,z) và w) và theo (z,y) (xoáả ử (z,y) và z) Ti p t c đi theo c nh (y,x) (xoá (y,x) và y) Vì (x,u) là c u nên đi theo c nhế ụ ạ ầ ạ (x,v) ho c (x,t), gi s (x,v) (xoá (x,v)) Ti p t c đi theo c nh (v,t) (xoá (v,t) và v), theoặ ả ử ế ụ ạ
c nh (t,x) (xoá c nh (t,x) và t), cu i cung đi theo c nh (x,u) (xoá (x,u), x và u).ạ ạ ố ạ
4.1.6 Bài toán ng ườ i phát th Trung Hoa: ư
M t nhân viên đi t S B u Đi n, qua m t s độ ừ ở ư ệ ộ ố ường ph đ phát th , r i quayố ể ư ồ
v S Ngề ở ườ ấi y ph i đi qua các đả ường theo trình t nào đ đự ể ường đi là ng n nh t?ắ ấ
Bài toán được nhà toán h c Trung Hoa Guan nêu lên đ u tiên (1960), vì v yọ ầ ậ
thường được g i là “bài toán ngọ ười phát th Trung Hoa” Ta xét bài toán m t d ngư ở ộ ạ
đ n gi n nh sau.ơ ả ư
Cho đ th liên thông G M t chu trình qua m i c nh c a G g i là m t hành trìnhồ ị ộ ọ ạ ủ ọ ộ trong G Trong các hành trình đó, hãy tìm hành trình ng n nh t, t c là qua ít c nh nh t.ắ ấ ứ ạ ấ
Rõ ràng r ng n u G là đ th Euler (m i đ nh đ u có b c ch n) thì chu trìnhằ ế ồ ị ọ ỉ ề ậ ẵ Euler trong G (qua m i c nh c a G đúng m t l n) là hành trình ng n nh t c n tìm.ỗ ạ ủ ộ ầ ắ ấ ầ
Ch còn ph i xét trỉ ả ường h p G có m t s đ nh b c l (s đ nh b c l là m t sợ ộ ố ỉ ậ ẻ ố ỉ ậ ẻ ộ ố
ch n) Khi đó, m i hành trình trong G ph i đi qua ít nh t hai l n m t s c nh nào đó.ẵ ọ ả ấ ầ ộ ố ạ
D th y r ng m t hành trình qua m t c nh (u,v) nào đó quá hai l n thì khôngễ ấ ằ ộ ộ ạ ầ
ph i là hành trình ng n nh t trong G Vì v y, ta ch c n xét nh ng hành trình T đi quaả ắ ấ ậ ỉ ầ ữ hai l n m t s c nh nào đó c a G.ầ ộ ố ạ ủ
Ta quy ước xem m i hành trình T trong G là m t hành trình trong đ th Eulerỗ ộ ồ ị
GT, có đượ ừc t G b ng cách v thêm m t c nh song song đ i v i nh ng c nh mà T điằ ẽ ộ ạ ố ớ ữ ạ qua hai l n Bài toán đ t ra đầ ặ ược đ a v bài toán sau:ư ề
Trong các đ th Euler Gồ ị T, tìm đ th có s c nh ít nh t (khi đó chu trình Eulerồ ị ố ạ ấ trong đ th này là hành trình ng n nh t).ồ ị ắ ấ
Đ nh lý (Gooodman và Hedetniemi, 1973) ị N u G là m t đ th liên thông có qế ộ ồ ị
c nh thì hành trình ng n nh t trong G có chi u dàiạ ắ ấ ề
q + m(G), trong đó m(G) là s c nh mà hành trình đi qua hai l n và đố ạ ầ ược xác đ nh nh sau:ị ư
G i Vọ 0(G) là t p h p các đ nh b c l (2k đ nh) c a G Ta phân 2k ph n t c a Gậ ợ ỉ ậ ẻ ỉ ủ ầ ử ủ thành k c p, m i t p h p k c p g i là m t phân ho ch c p c a Vặ ỗ ậ ợ ặ ọ ộ ạ ặ ủ 0(G)
Ta g i đ dài đọ ộ ường đi ng n nh t t u đ n v là kho ng cách d(u,v) Đ i v iắ ấ ừ ế ả ố ớ
m i phân ho ch c p Pọ ạ ặ i, ta tính kho ng cách gi a hai đ nh trong t ng c p, r i tính t ngả ữ ỉ ừ ặ ồ ổ d(Pi) S m(G) b ng c c ti u c a các d(Pố ằ ự ể ủ i):
Trang 5m(G)=min d(Pi).
Thí d 2: ụ Gi i bài toán ngả ười phát th Trung Hoa cho trong đ th sau:ư ồ ị
G GT
T p h p các đ nh b c l Vậ ợ ỉ ậ ẻ O(G)={B, G, H, K} và t p h p các phân ho ch c p làậ ợ ạ ặ P={P1, P2, P3}, trong đó
P1 = {(B, G), (H, K)} → d(P1) = d(B, G)+d(H, K) = 4+1 = 5,
P2 = {(B, H), (G, K)} → d(P2) = d(B, H)+d(G, K) = 2+1 = 3,
P3 = {(B, K), (G, H)} → d(P3) = d(B, K)+d(G, H) = 3+2 = 5
m(G) = min(d(P1), d(P2), d(P3)) = 3
Do đó GT có đượ ừc t G b ng cách thêm vào 3 c nh: (B, I), (I, H), (G, K) và Gằ ạ T là
đ th Euler V y hành trình ng n nh t c n tìm là đi theo chu trình Euler trong Gồ ị ậ ắ ấ ầ T:
A, B, C, D, E, F, K, G, K, E, C, J, K, H, J, I, H, I, B, I, A
4.1.7 Đ nh lý: ị Đ th có hồ ị ướng liên thông y u G là đ th Euler khi và ch khi m iế ồ ị ỉ ọ
đ nh c a G đ u có b c vào b ng b c ra.ỉ ủ ề ậ ằ ậ
Ch ng minh: ứ Ch ng minh tứ ương t nh ch ng minh c a Đ nh lý 4.1.2 và đi u ki nự ư ứ ủ ị ề ệ
đ cũng c n có b đ dủ ầ ổ ề ưới đây tương t nh B đ 4.1.3.ự ư ở ổ ề
4.1.8 B đ : ổ ề N u b c vào và b c ra c a m i đ nh c a đ th có hế ậ ậ ủ ỗ ỉ ủ ồ ị ướng G không nhỏ
h n 1 thì G ch a chu trình đ n.ơ ứ ơ
4.1.9 H qu : ệ ả Đ th có hồ ị ướng liên thông y u G là n a Euler (mà không là Euler) khiế ử
và ch khi t n t i hai đ nh x và y sao cho:ỉ ồ ạ ỉ
dego(x) = degt(x)+1, degt(y) = dego(y)+1, degt(v) = dego(v), ∀v∈V, v ≠ x, v ≠ y
Ch ng minh: ứ Ch ng minh tứ ương t nh H qu 4.1.4.ự ư ở ệ ả
4.2 Đ ƯỜ NG ĐI HAMILTON VÀ Đ TH HAMILTON Ồ Ị
Năm 1857, nhà toán h c ngọ ười Ailen là Hamilton(1805-1865) đ a ra trò ch i “điư ơ vòng quanh th gi i” nh sau.ế ớ ư
Cho m t hình th p nh di n đ u (đa di n đ u có 12 m t, 20 đ nh và 30 c nh),ộ ậ ị ệ ề ệ ề ặ ỉ ạ
m i đ nh c a hình mang tên m t thành ph n i ti ng, m i c nh c a hình (n i hai đ nh)ỗ ỉ ủ ộ ố ổ ế ỗ ạ ủ ố ỉ
là đường đi l i gi a hai thành ph tạ ữ ố ương ng Xu t phát t m t thành ph , hãy tìmứ ấ ừ ộ ố
D
F
Trang 6đường đi thăm t t c các thành ph khác, m i thành ph ch m t l n, r i tr v chấ ả ố ỗ ố ỉ ộ ầ ồ ở ề ỗ cũ
Trước Hamilton, có th là t th i Euler, ngể ừ ờ ười ta đã bi t đ n m t câu đ hócế ế ộ ố búa v “đề ường đi c a con mã trên bàn c ” Trên bàn c , con mã ch có th đi theoủ ờ ờ ỉ ể
đường chéo c a hình ch nh t 2 x 3 ho c 3 x 2 ô vuông Gi s bàn c có 8 x 8 ôủ ữ ậ ặ ả ử ờ vuông Hãy tìm đường đi c a con mã qua đủ ượ ấ ảc t t c các ô c a bàn c , m i ô ch m tủ ờ ỗ ỉ ộ
l n r i tr l i ô xu t phát.ầ ồ ở ạ ấ
Bài toán này được nhi u nhà toán h c chú ý, đ c bi t là Euler, De Moivre,ề ọ ặ ệ Vandermonde,
Hi n nay đã có nhi u l i gi i và phệ ề ờ ả ương pháp gi i cũng có r t nhi u, trong đóả ấ ề
có quy t c: m i l n b trí con mã ta ch n v trí mà t i v trí này s ô ch a dùng t i doắ ỗ ầ ố ọ ị ạ ị ố ư ớ
nó kh ng ch là ít nh t.ố ế ấ
M t phộ ương pháp khác d a trên tính đ i x ng c a hai n a bàn c Ta tìm hànhự ố ứ ủ ử ờ trình c a con mã trên m t n a bàn c , r i l y đ i x ng cho n a bàn c còn l i, sau đóủ ộ ử ờ ồ ấ ố ứ ử ờ ạ
n i hành trình c a hai n a đã tìm l i v i nhau.ố ủ ử ạ ớ
Trò ch i và câu đ trên d n t i vi c kh o sát m t l p đ th đ c bi t, đó là đơ ố ẫ ớ ệ ả ộ ớ ồ ị ặ ệ ồ
th Hamilton.ị
4.2.1 Đ nh nghĩa: ị Chu trình (t đư ường đi) s c p ch a t t c các đ nh c a đ thơ ấ ứ ấ ả ỉ ủ ồ ị (vô hướng ho c có hặ ướng) G được g i là chu trình (t đọ ư ường đi) Hamilton M t độ ồ
th có ch a m t chu trình (t đị ứ ộ ư ường đi) Hamilton được g i là đ th Hamilton (t .ọ ồ ị ư
n a Hamilton).ử
Thí d 3: ụ 1)
Đ th Hamilton (hình th p nh di n đ u bi u di n trong m t ph ng) v i chuồ ị ậ ị ệ ề ể ẽ ặ ẳ ớ trình Hamilton A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, A (đường tô
đ m).ậ
C
J
T
F
S R
Trang 72) Trong m t đ t thi đ u bóng bàn có n (n ộ ợ ấ ≥ 2) đ u th tham gia M i đ u th g pấ ủ ỗ ấ ủ ặ
t ng đ u th khác đúng m t l n Trong thi đ u bóng bàn ch có kh năng th ng ho cừ ấ ủ ộ ầ ấ ỉ ả ắ ặ thua Ch ng minh r ng sau đ t thi đ u có th x p t t c các đ u th đ ng thành m tứ ằ ợ ấ ể ế ấ ả ấ ủ ứ ộ hàng d c, đ ngọ ể ườ ứi đ ng sau th ng ngắ ườ ứi đ ng ngay trước anh (ch ) ta.ị
Xét đ th có hồ ị ướng G g m n đ nh sao cho m i đ nh ng v i m t đ u th và cóồ ỉ ỗ ỉ ứ ớ ộ ấ ủ
m t cung n i t đ nh u đ n đ nh v n u đ u th ng v i u th ng đ u th ng v i v.ộ ố ừ ỉ ế ỉ ế ấ ủ ứ ớ ắ ấ ủ ứ ớ
Nh v y, đ th G có tính ch t là v i hai đ nh phân bi t b t kỳ u và v, có m t và chư ậ ồ ị ấ ớ ỉ ệ ấ ộ ỉ
m t trong hai cung (u,v) ho c (v,u), đ th nh th độ ặ ồ ị ư ế ược g i là đ th có họ ồ ị ướng đ yầ
đ T M nh đ 4.2.2 dủ ừ ệ ề ưới đây, G là m t đ th n a Hamilton Khi đó độ ồ ị ử ường đi Hamilton trong G cho ta s s p x p c n tìm.ự ắ ế ầ
3) M t l i gi i v hành trình c a con mã trên bàn c 8 x 8:ộ ờ ả ề ủ ờ
Đường đi Hamilton tương t đự ường đi Euler trong cách phát bi u: Để ường đi Euler qua m i c nh (cung) c a đ th đúng m t l n, đọ ạ ủ ồ ị ộ ầ ường đi Hamilton qua m i đ nhọ ỉ
c a đ th đúng m t l n Tuy nhiên, n u nh bài toán tìm đủ ồ ị ộ ầ ế ư ường đi Euler trong m t độ ồ
th đã đị ược gi i quy t tr n v n, d u hi u nh n bi t m t đ th Euler là khá đ n gi nả ế ọ ẹ ấ ệ ậ ế ộ ồ ị ơ ả
và d s d ng, thì các bài toán v tìm đễ ử ụ ề ường đi Hamilton và xác đ nh đ th Hamiltonị ồ ị
l i khó h n r t nhi u Đạ ơ ấ ề ường đi Hamilton và đ th Hamilton có nhi u ý nghĩa th cồ ị ề ự
ti n và đã đễ ược nghiên c u nhi u, nh ng v n còn nh ng khó khăn l n ch a ai vứ ề ư ẫ ữ ớ ư ượ t qua được
Người ta ch m i tìm đỉ ớ ược m t vài đi u ki n đ đ nh n bi t m t l p r t nhộ ề ệ ủ ể ậ ế ộ ớ ấ ỏ các đ th Hamilton và đ th n a Hamilton Sau đây là m t vài k t qu ồ ị ồ ị ử ộ ế ả
D
T
Trang 84.2.2 Đ nh lý (Rédei): ị N u G là m t đ th có hế ộ ồ ị ướng đ y đ thì G là đ th n aầ ủ ồ ị ử Hamilton
Ch ng minh: ứ Gi s G=(V,E) là đ th có hả ử ồ ị ướng đ y đ và ầ ủ α=(v1,v2, , vk-1, vk) là
đường đi s c p b t kỳ trong đ th G.ơ ấ ấ ồ ị
N u ế α đã đi qua t t c các đ nh c a G thì nó là m t đấ ả ỉ ủ ộ ường đi Hamilton c a G.ủ
N u trong G còn có đ nh n m ngoài ế ỉ ằ α, thì ta có th b sung d n các đ nh này vào ể ổ ầ ỉ α
và cu i cùng nh n đố ậ ược đường đi Hamilton
Th t v y, gi s v là đ nh tuỳ ý không n m trên ậ ậ ả ử ỉ ằ α
a) N u có cung n i v v i vế ố ớ 1 thì b sung v vào đ u c a đổ ầ ủ ường đi α đ để ược α1=(v, v1,
v2, , vk-1, vk)
b) N u t n t i ch s i (1 ế ồ ạ ỉ ố ≤ i ≤ k-1) mà t vừ i có cung n i t i v và t v có cung n i t iố ớ ừ ố ớ
vi+1 thì ta chen v vào gi a vữ i và vi+1 đ để ược đường đi s c p ơ ấ α2=(v1, v2, , vi, v, vi+1, ,
vk)
c) N u c hai kh năng trên đ u không x y ra nghĩa là v i m i i (1 ế ả ả ề ả ớ ọ ≤ i ≤ k) vi đ u cóề cung đi t i v Khi đó b sung v vào cu i c a đớ ổ ố ủ ường đi α và được đường đi α3=(v1,
v2, , vk-1, vk, v)
N u đ th G có n đ nh thì sau n-k b sung ta s nh n đế ồ ị ỉ ổ ẽ ậ ược đường đi Hamilton
4.2.3 Đ nh lý (Dirac, 1952): ị N u G là m t đ n đ th có n đ nh và m i đ nh c a Gế ộ ơ ồ ị ỉ ọ ỉ ủ
đ u có b c không nh h n ề ậ ỏ ơ
2
n
thì G là m t đ th Hamilton.ộ ồ ị
Ch ng minh: ứ Đ nh lý đị ược ch ng minh b ng ph n ch ng Gi s G không có chuứ ằ ả ứ ả ử trình Hamilton Ta thêm vào G m t s đ nh m i và n i m i đ nh m i này v i m i đ nhộ ố ỉ ớ ố ỗ ỉ ớ ớ ọ ỉ
c a G, ta đủ ược đ th G’ Gi s k (>0) là s t i thi u các đ nh c n thi t đ G’ ch aồ ị ả ử ố ố ể ỉ ầ ế ể ứ
m t chu trình Hamilton Nh v y, G’ có n+k đ nh.ộ ư ậ ỉ
G i P là chu trình Hamilton ayb a trong G’, trong đó a và b là các đ nh c a G,ọ ỉ ủ còn y là m t trong các đ nh m i Khi đó b không k v i a, vì n u trái l i thì ta có th bộ ỉ ớ ề ớ ế ạ ể ỏ
đ nh y và đỉ ược chu trình ab a, mâu thu n v i gi thi t v tính ch t nh nh t c a k.ẩ ớ ả ế ề ấ ỏ ấ ủ
Ngoài ra, n u a’ là m t đ nh k nào đó c a a (khác v i y) và b’ là đ nh n i ti pế ộ ỉ ề ủ ớ ỉ ố ế ngay a’ trong chu trình P thì b’ không th là đ nh k v i b, vì n u trái l i thì ta có thể ỉ ề ớ ế ạ ể
a
b’
a' b y
Trang 9thay P b i chu trình aa’ bb’ a, trong đó không có y, mâu thu n v i gi thi t v tínhở ẩ ớ ả ế ề
ch t nh nh t c a k.ấ ỏ ấ ủ
Nh v y, v i m i đ nh k v i a, ta có m t đ nh không k v i b, t c là s đ như ậ ớ ỗ ỉ ề ớ ộ ỉ ề ớ ứ ố ỉ không k v i b không th ít h n s đ nh k v i a (s đ nh k v i a không nh h n ề ớ ể ơ ố ỉ ề ớ ố ỉ ề ớ ỏ ơ
2
n
+k) M t khác, theo gi thi t s đ nh k v i b cũng không nh h n ặ ả ế ố ỉ ề ớ ỏ ơ
2
n
+k Vì không có
đ nh nào v a k v i b l i v a không k v i b, nên s đ nh c a G’ không ít h n 2(ỉ ừ ề ớ ạ ừ ề ớ ố ỉ ủ ơ
2
n
+k)=n+2k, mâu thu n v i gi thi t là s đ nh c a G’ b ng n+k (k>0) Đ nh lý đẩ ớ ả ế ố ỉ ủ ằ ị ượ c
ch ng minh.ứ
4.2.4 H qu : ệ ả N u G là đ n đ th có n đ nh và m i đ nh c a G đ u có b c khôngế ơ ồ ị ỉ ọ ỉ ủ ề ậ
nh h n ỏ ơ
2
1
−
n
thì G là đ th n a Hamilton.ồ ị ử
Ch ng minh: ứ Thêm vào G m t đ nh x và n i x v i m i đ nh c a G thì ta nh n độ ỉ ố ớ ọ ỉ ủ ậ ượ c
đ n đ th G’ có n+1 đ nh và m i đ nh có b c không nh h n ơ ồ ị ỉ ỗ ỉ ậ ỏ ơ
2
1 +
n
Do đó theo Đ nh lýị 4.2.3, trong G’ có m t chu trình Hamilton B x ra kh i chu trình này, ta nh n độ ỏ ỏ ậ ượ c
đường đi Hamilton trong G
4.2.5 Đ nh lý (Ore, 1960): ị N u G là m t đ n đ th có n đ nh và b t kỳ hai đ nh nàoế ộ ơ ồ ị ỉ ấ ỉ không k nhau cũng có t ng s b c không nh h n n thì G là m t đ th Hamilton.ề ổ ố ậ ỏ ơ ộ ồ ị
4.2.6 Đ nh lý: ị N u G là đ th phân đôi v i hai t p đ nh là Vế ồ ị ớ ậ ỉ 1, V2 có s đ nh cùngố ỉ
b ng n (n ằ ≥ 2) và b c c a m i đ nh l n h n ậ ủ ỗ ỉ ớ ơ
2
n
thì G là m t đ th Hamilton.ộ ồ ị
Thí d 4: ụ
Đ th G này có 8 đ nh, đ nh nào cũng Đ th G’ này có 5 đ nh b c 4 và 2 đ nh ồ ị ỉ ỉ ồ ị ỉ ậ ỉ
có b c 4, nên theo Đ nh lý 4.2.3, G là b c 2 k nhau nên t ng s b c c a haiậ ị ậ ề ổ ố ậ ủ
đ nhỉ
đ th Hamilton không k nhau b t kỳ b ng 7 ho c 8, nênồ ị ề ấ ằ ặ theo Đ nh lý 4.2.5, G’ là đ th Hamilton.ị ồ ị
e
f
g
h
b
a
e
f
g
d
a
Trang 104.2.7 Bài toán s p x p ch ng i: ắ ế ỗ ồ
Có n đ i bi u t n nạ ể ừ ước đ n d h i ngh qu c t M i ngày h p m t l n ng iế ự ộ ị ố ế ỗ ọ ộ ầ ồ quanh m t bàn tròn H i ph i b trí bao nhiêu ngày và b trí nh th nào sao cho trongộ ỏ ả ố ố ư ế
m i ngày, m i ngỗ ỗ ười có hai ngườ ếi k bên là b n m i L u ý r ng n ngạ ớ ư ằ ườ ềi đ u mu nố làm quen v i nhau.ớ
Xét đ th g m n đ nh, m i đ nh ng v i m i ngồ ị ồ ỉ ỗ ỉ ứ ớ ỗ ườ ự ội d h i ngh , hai đ nh kị ỉ ề nhau khi hai đ i bi u tạ ể ương ng mu n làm quen v i nhau Nh v y, ta có đ th đ yứ ố ớ ư ậ ồ ị ầ
đ Kủ n Đ th này là Hamilton và rõ ràng m i chu trình Hamilton là m t cách s p x pồ ị ỗ ộ ắ ế
nh yêu c u c a bài toán Bái toán tr thành tìm các chu trình Hamilton phân bi t c aư ầ ủ ở ệ ủ
đ th đ y đ Kồ ị ầ ủ n (hai chu trình Hamilton g i là phân bi t n u chúng không có c nhọ ệ ế ạ chung)
Đ nh lý: ị Đ th đ y đ Kồ ị ầ ủ n v i n l và n ớ ẻ ≥ 3 có đúng
2
1
−
n
chu trình Hamilton phân
bi t.ệ
Ch ng minh: ứ Kn có
2
) 1 (n−
n
c nh và m i chu trình Hamilton có n c nh, nên s chuạ ỗ ạ ố
trình Hamilton phân bi t nhi u nh t là ệ ề ấ
2
1
−
n
Gi s các đ nh c a Kả ử ỉ ủ n là 1, 2, , n Đ t đ nh 1 t i tâm c a m t đặ ỉ ạ ủ ộ ường tròn và các
đ nh 2, , n đ t cách đ u nhau trên đỉ ặ ề ường tròn (m i cung là 360ỗ 0/(n-1) sao cho đ nh lỉ ẻ
n m n a đằ ở ử ường tròn trên và đ nh ch n n m n a đỉ ẵ ằ ở ử ường tròn dưới Ta có ngay chu trình Hamilton đ u tiên là 1,2, , n,1 Các đ nh đầ ỉ ược gi c đ nh, xoay khung theoữ ố ị chi u kim đ ng h v i các góc quay:ề ồ ồ ớ
1
3600
−
3600
−
3600
−
n , , 2
3
−
n
1
3600
−
Đ th phân đôi này có b c c a m i đ nh b ng 2ồ ị ậ ủ ỗ ỉ ằ
ho c 3 (> 3/2), nên theo Đ nh lý 4.2.6, nó là đ thặ ị ồ ị Hamilton
1
2 3
4 5
n