Th‡ minh ho§ cho b£y cây c¶u

Một phần của tài liệu một số vấn đề về đường đi euler và chi trình euler (Trang 26)

T¯ ó xußt hiªn rßt nhi∑u bài toán v≥ hình b¨ng mÎt nét, yêu c¶u t¯ khi ∞t bút ∏n lúc k∏t thúc không ˜Òc nhßc bút ra kh‰i m∞t gißy. ây là mÎt vßn ∑ lí thú song không ph£i hình nào cÙng v≥ ˜Òc b¨ng mÎt nét.

ChØng h§n nh˜ trong 3 hình d˜Ói ây ta thßy các hình a) và b) v≥ ˜Òc b¨ng mÎt nét nh˜ng hình c) không v≥ ˜Òc b¨ng mÎt nét.

i∑u kiªn c¶n và ı ∫ Áth‡vô h˜Óng có ˜Ìng i Euler s≥ tr£ lÌi ˜Òc câu h‰i "T§i sao hình này v≥ ˜Òc mÎt nét còn hình kia không th∫ v≥ ˜Òc mÎt nét?". Trong các ph¶n ti∏p theo chúng tôi s≥ trình bày chi ti∏t hÏn v∑ các vßn ∑ xoay quanh ˜Ìng i Euler và chu trình Euler.

2.1 ‡nh nghæa

‡nh nghæa 2.1.1 (xem [12]). Chu trình Ïn ch˘a tßt c£ các c§nh cıa Á th‡ G ˜Òc gÂi là chu trình Euler. ˜Ìng i Euler trong G là ˜Ìng i Ïn ch˘a mÂi c§nh cıa G.

Chu trình Euler là ˜Ìng i Euler có ønh ¶u trùng vÓi ønh cuËi. Ví dˆ 2.1.1. Cho các Á th‡ vô h˜Óng G1, G2, G3 nh˜ Hình 2.3.

Hình 2.3: Các Á th‡vô h˜ÓngG1, G2vàG3. Ta có các nh™n xét sau:

Á th‡ G1 có chu trình Euler A, E, C, D, E, B, A.

Á th‡ G2 không có chu trình cÙng nh˜ ˜Ìng i Euler.

Á th‡ G3 không có chu trình Euler nh˜ng nó có ˜Ìng i Euler

A, C, D, E, B, D, A, B.

Ví dˆ 2.1.2. Cho các Á th‡ có h˜Óng H1, H2, H3 nh˜ Hình 2.4.

Hình 2.4: Các Áth‡ có h˜ÓngH1, H2vàH3. Ta có các nh™n xét sau:

Á th‡ H1 có chu trình Euler A, B, C, D, E, A.

Á th‡ H2 không có chu trình cÙng nh˜ ˜Ìng i Euler.

Á th‡ H3 không có chu trình Euler nh˜ng nó có ˜Ìng i Euler

2.2 Chu trình và ˜Ìng i Euler trong Á th‡ vô h˜Óng

Khi gi£i bài toán 7 cây c¶u K¨onigsberg, Euler ã phát hiªn ra các tiêu chu©n ∫ khØng ‡nh mÎt a Á th‡ có chu trình và ˜Ìng i Euler hay không,  ph¶n này chúng tôi s≥ giÓi thiªu v∑ chúng. Gi£ s˚ trong mˆc này chúng ta chø xét các Á th‡ h˙u h§n, t˘c là các Á th‡ có mÎt sË h˙u h§n các ønh và các c§nh. Ta có ‡nh l˛ v∑ chu trình Euler nh˜ sau.

‡nh l˛ 2.2.1 (xem [12]). MÎt a Á th‡ liên thông G = (X, E) có chu trình Euler khi và chø khi mÈi ønh cıa nó ∑u có b™c chÆn.

Ch˘ng minh.

• i∑u kiªn c¶n. Ta s≥ ch˘ng minh n∏u Á th‡ G có chu trình Euler, thì mÂi ønh cıa G ∑u có b™c chÆn.

Th™t v™y, tr˜Óc tiên gi£ s˚ G có chu trình Euler b≠t ¶u t¯ ønh A

và ti∏p tˆc b¨ng c§nh liên thuÎc vÓi A, chØng h§n {A, B}, khi ó c§nh {A, B} góp mÎt Ïn v‡ và deg(A). MÈi l¶n khi chu trình i qua mÈi ønh, nó t´ng thêm hai Ïn v‡ cho b™c cıa ønh ó. Vì chu trình i vào mÈi ønh b¨ng mÎt c§nh liên thuÎc và rÌi kh‰i ønh này b¨ng mÎt c§nh liên thuÎc khác. CuËi cùng chu trình k∏t thúc  ønh mà nó xußt phát. Do ó nó t´ng thêm mÎt Ïn v‡ vào deg(A). Nghæa là deg(A) ph£i là sË chÆn. ønh khác

A cÙng có b™c chÆn vì chu trình góp hai Ïn v‡ vào b™c cıa nó mÈi l¶n i qua ønh này. V™y mÈi ønh cıa G ∑u có b™c chÆn.

• i∑u kiªn ı. Gi£ s˚ mÂi ønh cıa a Á th‡ liên thông G ∑u có b™c chÆn ta s≥ ch˘ng minh tÁn t§i mÎt chu trình Euler trong G.

Th™t v™y ta s≥ xây d¸ng mÎt chu trình Ïn b≠t ¶u t¯ ønh A tu˝ ˛ cıa

G. GÂix0 = A, tr˜Óc tiên ta chÂn tu˝ ˛c§nh{x0, x1},{x1, x2}, . . . ,{xn 1, xn} càng dài càng tËt. Ví dˆ, trong Á th‡ sau:

Ta b≠t ¶u t§i A và chÂn các c§nh liên ti∏p{A, B},{B, C},{C, F},{F, A}. ˜Ìng i mà ta chÂn s≥ k∏t thúc vì Á th‡ có h˙u h§n ønh. ˜Ìng i này b≠t ¶u t§i A và k∏t thúc t§i A.

i∑u này luôn x£y ra vì mÈi l¶n ˜Ìng i qua mÎt ønh b™c chÆn nó chø dùng mÎt c§nh ∫ vào ønh này và còn ít nhßt mÎt ønh ∫ ra kh‰i ønh này. ˜Ìng i v¯a nói trên có th∫ i qua tßt c£ các c§nh ho∞c có th∫ không. N∏u tßt c£ các c§nh ˜Òc s˚ dˆng, thì ta nh™n ˜Òc chu trình Euler. N∏u không ta gÂi H là Á th‡ con nh™n ˜Òc t¯ G b¨ng cách xoá các c§nh ã dùng và các ønh không liên thuÎc vÓi các c§nh còn l§i. ChØng h§n vÓi Á th‡ trên, khi xoá i chu trình A, B, C, F, A kh‰i Á th‡ này ta nh™n ˜Òc Á th‡ con H.

Vì G là liên thông nên H có ít nhßt mÎt ønh chung vÓi chu trình v¯a b‡ xoá. GÂi w là ønh ó (trong ví dˆ trên là ønh C). MÈi ønh cıa H có b™c chÆn vì tßt c£ các ønh cıa cıa G có b™c chÆn và vÓi mÈi ønh ta ã xoá i t¯ng c∞p liên thuÎc ∫ t§o ra H. L˜u ˛ r¨ng H có th∫ không liên thông. B≠t ¶u t¯ ønh w ta xây d¸ng mÎt ˜Ìng i Ïn b¨ng cách chÂn càng nhi∑u ønh càng tËt nh˜ ã làm trong G. ˜Ìng này ph£i k∏t thúc t§i w. Ví dˆ vÓi Á th‡H nói trên ta có chu trình con: C, D, E, C. Sau ó, ta t§o mÎt chu trình trong G b¨ng cách ghép chu trình trong H vÓi chu

trình ban ¶u trong G ( i∑u này th¸c hiªn ˜Òc vì hai chu trình có chung ønh w). Ti∏p tˆc quá trình này cho ∏n khi tßt c£ các ønh ˜Òc s˚ dˆng. Quá trình này ph£i k∏t thúc vì Á th‡ có h˙u h§n ønh. Do ó, ta ã xây d¸ng ˜Òc mÎt chu trình Euler.

Tr l§i bài toán b£y cây c¶u  K¨onigsberg, ta ã thßy a Á th‡ G = (X, E) bi∫u diπn các c¶u  K¨onigsberg có bËn ønh b™c l¥ (nh˜ hình).

Do ó, theo ‡nh l˛ trên s≥ không có chu trình Euler trong a Á th‡ này. i∑u này cÙng có nghæa là bài toán b£y cây c¶u  K¨onigsberg không có lÌi gi£i. Hay nói cách khác, không th∫ t¯ mÎt ‡a i∫m nào ó i qua b£y cây c¶u qua mÈi c¶u úng mÎt l¶n rÁi tr v∑ ˜Òc nÏi xußt phát.

Bây giÌ chúng ta s≥ tìm hi∫u v∑ các ‡nh l˛ nói v∑ tính chßt cıa ˜Ìng i Euler.

‡nh l˛ 2.2.2 (xem [6], [7]). a Á th‡ vô h˜Óng G= (X, E) có ˜Ìng i Euler khi và chø khi nó ch˘a không quá mÎt thành ph¶n liên thông có c§nh và n∏u sË ønh b™c l¥ là 0 ho∞c 2.

Ch˘ng minh.

• i∑u kiªn c¶n.

Vì n∏u trong G có ˜Ìng i Euler ↵, thì nó ph£i i qua tßt c£ các c§nh cıa Á th‡, nên G không th∫ ch˘a quá mÎt thành ph¶n liên thông có c§nh.

Ngoài ra, chø có th∫ ønh ¶u và ønh cuËi cıa ↵ (n∏u chúng khác nhau) là có b™c l¥ và ↵ qua mÈi ønh ∑u i vào b¨ng mÎt c§nh và i ra b¨ng mÎt c§nh khác và không l∞p l§i, nên chø có hai ønh là ¶u cıa ↵ mÓi b™c l¥. Do ó, sË ønh b™c l¥ trong G chø có th∫ là 0 ho∞c 2.

• i∑u kiªn ı. Ta xét hai tr˜Ìng hÒp:

TH1: N∏u Á th‡ G không ch˘a ønh b™c l¥, thì theo ‡nh l˛ 2.2.1, nó có chu trình Euler.

TH2: N∏u trong G có úng hai ønh b™c l¥, chØng h§n A, B là hai ønh b™c l¥ cıa G. N∏u thêm vào c§nh mÓi(A, m, B) thì Á th‡nh™n ˜Òc tho£ mãn i∑u kiªn ‡nh l˛ 2.2.1, nên nó có chu trình Euler ↵. Chu trình ↵

i qua mÈi c§nh cıa Á th‡ G úng mÎt l¶n và qua c§nh (A, m, B) cÙng úng mÎt l¶n, nên khi lo§i c§nh mÓi thêm kh‰i ↵, thì ph¶n còn l§i chính là ˜Ìng i Euler cıa Á th‡ G. ‡nh l˛ ˜Òc ch˘ng minh.

Nh™n xét 2.2.1. Cho Á th‡ G có k ønh b™c l¥ (sË ønh b™c l¥ là chÆn,

k = 2n). Khi ó sË ˜Ìng i tËi thi∫u c¶n thêm vào ∫ Á th‡ có chu trình Euler là k/2.

‡nh l˛ 2.2.3 (xem [12]). a Á th‡ liên thông G = (X, E) có ˜Ìng i Euler nh˜ng không có chu trình Euler khi và chø khi nó có úng hai ønh b™c l¥. Khi ó ˜Ìng i Euler có hai ¶u ˜Ìng i n¨m  hai ønh b™c l¥.

Ch˘ng minh.

• i∑u kiªn c¶n. Gi£ s˚ a Á th‡ G có ˜Ìng i Euler nh˜ng không có chu trình Euler. Ta s≥ ch˘ng minh G có úng hai ønh b™c l¥.

Th™t v™y, gi£ s˚ G có ˜Ìng i Euler t¯ A ∏n B nh˜ng không có chu trình Euler. C§nh ¶u tiên cıa ˜Ìng i góp mÎt Ïn v‡ vào deg(A). Sau

ó mÈi l¶n ˜Ìng i qua A l§i góp thêm hai Ïn v‡ vào deg(A).

Ch≠c ch≠n ˜Ìng i không th∫ k∏t thúc t§i A, cho nên deg(A) là sË l¥. C§nh cuËi cùng cıa ˜Ìng i góp mÎt Ïn v‡ vào deg(B) và mÈi l¶n i

qua B nó cÙng góp hai Ïn v‡ vào deg(B). Do ó, deg(B) là sË l¥. Các ønh trung gian ∑u có b™c chÆn vì mÈi l¶n ˜Ìng i tÓi rÁi l§i i nên t´ng hai Ïn v‡ cho b™c cıa ønh ó. Nh˜ v™y ta thßy Á th‡ ã cho có úng hai ønh b™c l¥ và hai ønh này là ønh ¶u và ønh cuËi cıa ˜Ìng i.

• i∑u kiªn ı. Gi£ s˚ Á th‡ liên thông G có úng hai ønh b™c l¥. Ta s≥ ch˘ng minh G có ˜Ìng i Euler.

Th™t v™y, gi£ s˚ G có úng hai ønh b™c l¥ là A và B. Thêm vào c§nh nËi gi˙a A và B ta ˜Òc Á th‡G0. Khi ó trong Á th‡ mÓi G0 = G[AB, tßt c£ các ønh ∑u có b™c chÆn. Do ó, theo ‡nh l˛ 2.2.1, tÁn t§i mÎt chu trình Euler trongG0. Trong chu trình này b‰ c§nh AB, ta ˜Òc ˜Ìng

i Euler trong G.

Nh˜ v™y, trong mÎt a Á th‡ liên thông có hai ønh b™c l¥ thì ˜Ìng i Euler trong Á th‡ ó s≥ nh™n hai ønh b™c l¥ làm các i∫m ¶u mút. Ví dˆ 2.2.1. Á th‡ nào trên Hình 2.5 có ˜Ìng i Euler?

Hình 2.5: Ba Áth‡vô h˜Óng.

G1 có úng hai ønh b™c l¥ là b và d. Do ó, nó có ˜Ìng i Euler nh™n

b và d là các i∫m ¶u mút. MÎt trong các ˜Ìng i Euler là d, a, b, c, d, b.

G2 có úng hai ønh b™c l¥ là b và d. Do ó, nó có ˜Ìng i Eu- ler nh™n b và d là các i∫m ¶u mút. MÎt trong các ˜Ìng i Euler là

Còn G3 không có ˜Ìng i Euler vì nó có 6 ønh b™c l¥.

∫ tìm mÎt chu trình Euler trong mÎt a Á th‡ có tßt c£ các ønh ∑u b™c chÆn, ta có th∫ s˚ dˆng thu™t toán Fleury (xem [6]) nh˜ sau:

Xußt phát t¯ mÎt ønh bßt k˝ cıa Á th‡ G và tuân thı theo hai quy t≠c:

• Quy t≠c 1: MÈi khi i qua mÎt c§nh nào ó thì xóa nó i, sau ó xóa ønh cô l™p (n∏u có).

• Quy t≠c 2: Không bao giÌ i qua c§nh c¶u (là c§nh duy nhßt nËi gi˙a hai thành ph¶n liên thông), tr¯ khi không còn cách i nào khác.

Khi th¸c hiªn thu™t toán này c¶n l˜u ˛: MÈi khi g∞p c§nh c¶u c¶n ph£i xoá h∏t mÎt trong hai thành ph¶n liên thông rÁi mÓi "xoá" c§nh c¶u. Chú ˛ 2.2.1. N∏u a Á th‡ có hai ønh b™c l¥, thì khi tìm ˜Ìng i Euler c¶n xußt phát t¯ mÎt trong hai ønh b™c l¥ và s≥ k∏t thúc t§i ønh b™c l¥

kia.

Ví dˆ 2.2.2. Tìm chu trình Euler trong Á th‡ sau:

Hình 2.6: Á th‡có chu trình Euler.

B˜Óc 1: Xußt phát t¯ ønh Acó th∫ i theo c§nh (A, B) ho∞c (A, F), gi£ s˚ là c§nh (A, B) (xóa c§nh (A, B)).

B˜Óc 2:T¯ ønhBcó th∫ i qua mÎt trong các c§nh(B, C),(B, E),(B, F), gi£ s˚ là c§nh (B, C) (xóa c§nh (B, C)).

B˜Óc 3: Ti∏p tˆc, t¯ ønh C có th∫ i qua mÎt trong các c§nh (C, D),

(C, H), (C, G), gi£ s˚ là c§nh (C, D) (xóa c§nh (C, D)).

B˜Óc 5: Vì (G, F) là c§nh b≠c c¶u nên có th∫ i theo mÎt trong hai c§nh

(G, C),(G, H), gi£ s˚ là c§nh (G, C) (xóa c§nh (G, C)).

B˜Óc 6: i theo (C, H) (xóa c§nh (C, H) và ønh C).

B˜Óc 8: Ti∏p tˆc i theo c§nh (G, F) (xóa c§nh (G, F) và ønh G).

B˜Óc 9: Vì (F, A) là c§nh b≠c c¶u nên i theo c§nh (F, B) ho∞c (F, E), gi£ s˚ i theo c§nh (F, B) (xóa c§nh (F, B)).

B˜Óc 11: Theo c§nh (E, F) (xóa c§nh (E, F) và ønh E).

B˜Óc 12: CuËi cùng i theo c§nh (F, A) (xóa c§nh (F, A), ønhF và ønh

A). Nh˜ v™y, trong Ví dˆ trên chúng ta ã tìm ˜Òc mÎt chu trình Euler:

A, B, C, D, G, C, H, G, F, B, E, F, A

.

2.3 Chu trình và ˜Ìng i Euler trong Á th‡ có h˜Óng

Ta m rÎng khái niªm ã xét  trên cho tr˜Ìng hÒp Á th‡ có h˜Óng. Khi ó, ta có ˜Òc ‡nh l˛ sau.

‡nh l˛ 2.3.1 (xem [6], [7]). a Á th‡ có h˜Óng G = (X, U) không có

ønh cô l™p luôn tÁn t§i chu trình Euler khi và chø khi Á th‡ là liên thông y∏u Áng thÌi b™c ra và b™c vào cıa mÈi ønh là b¨ng nhau.

• i∑u kiªn c¶n.

N∏u a Á th‡ G có chu trình Euler ↵ thì ↵ ph£i i qua tßt c£ các c§nh, nên G không th∫ ch˘a quá mÎt thành ph¶n liên thông có c§nh. M∞t khác, vì ↵ ph£i i qua mÈi c§nh úng mÎt l¶n, nên mÈi khi qua mÎt ønh nào ó, ↵ i vào b¨ng mÎt c§nh, i ra b¨ng mÎt c§nh khác và không bao giÌ ˜Òc l∞p l§i, nên sË c§nh i vào t§i mÈi ønh ph£i b¨ng sË c§nh i ra kh‰i ønh này.

• i∑u kiªn ı.

Xußt phát t¯ ønh x0 tu˝ ˛ i theo h˜Óng bßt k˝, ta không i qua c§nh nào hai l¶n và mÈi khi tÓi mÎt ønh mà có c§nh ta ch˜a i qua thì i ti∏p cho tÓi khi g∞p ønh không còn c§nh nào ∫ i ti∏p. ønh này là x0 và ta ˜Òc mÎt vòng Ïn kí hiªu là . Có th∫ ch˜a i qua h∏t các c§nh cıa

G. V™y ph¶n còn l§i là mÎt Á th‡ con vÓi mÈi ønh có b™c vào b¨ng b™c ra.

Gi£ s˚ C1, C2, . . . , Ck là các thành ph¶n liên thông cıa G có ch˘a ít nhßt mÎt c§nh. Theo gi£ thi∏t quy n§p, C1, C2, . . . , Ck ã có các chu trình Euler ˜Òc kí hiªu l¶n l˜Òt là 1, 2, . . . , k.

Á th‡ là thành ph¶n liên thông duy nhßt cıa G ã là liên thông nên l¶n l˜Òt g∞p Ci(1 i  k) t§i các ønh t˜Ïng ˘ng

x1 2 C1, x2 2 C2, . . . , xk 2 Ck

ThËng nhßt các chu trình , 1, 2, . . . , k thành chu trình Ïn i qua tßt c£ các c§nh cıa Á th‡ b¨ng cách: t¯ x0 i theo ∏n x1, sau ó i theo 1 tr v∑ x1, rÁi l§i theo sang x2. . . c˘ ti∏p tˆc i nh˜ v™y cho ∏n khi ∏n xk. Sau ó i theo k ∫ xk tr l§i ønh x1 theo .

Chu trình chính là mÎt chu trình Euler cıa Á th‡ G. Ví dˆ 2.3.1. Trên Hình 2.7 ta có:

Hình 2.7: Á th‡minh ho§cho chu trình Euler trong Á th‡có h˜Óng.Á th‡ G1 có chu trình Euler: A, B, C, A, D, C, A. Á th‡ G1 có chu trình Euler: A, B, C, A, D, C, A.

Á th‡ G2 không có chu trình Euler.

‡nh l˛ 2.3.2 (xem [6], [7]). a Á th‡ có h˜Óng G = (X, U) không có

ønh cô l™p có ˜Ìng i Euler nh˜ng không có chu trình Euler khi và chø

khi G là Á th‡ liên thông y∏u Áng thÌi b™c vào và b™c ra cıa tßt c£ các

ønh là b¨ng nhau, tr¯ hai ønh, mÎt ønh vÓi b™c vào lÓn hÏn b™c ra mÎt

Ïn v‡, còn ønh kia có b™c ra lÓn hÏn b™c vào mÎt Ïn v‡. Ch˘ng minh.

• i∑u kiªn c¶n.

Gi£ s˚ Gcó ˜Ìng i Euler (không khép kín) . Vì ph£i i qua tßt c£ các c§nh cıa Á th‡ G, nên G là Á th‡ liên thông y∏u. (Tr˜Ìng hÒp ng˜Òc l§i, không th∫ i qua ˜Òc tßt c£ các c§nh cıa G).

Tr¯ ønh xußt phát là ønh mà ˜Ìng b≠t ¶u b¨ng c§nh i ra kh‰i ønh này (nh˜ng không có c§nh i vào), và ønh cuËi là ønh mà ˜Ìng k∏t thúc b¨ng mÎt c§nh i vào ønh này (nh˜ng không có c§nh i ra), t§i mÈi ønh còn l§i bao giÌ cÙng tÓi b¨ng mÎt c§nh i vào và rÌi i b¨ng mÎt c§nh i ra, nên G chø có th∫ có úng mÎt ønh có sË c§nh i ra lÓn

hÏn sË c§nh i vào là 1, mÈi ønh còn l§i ∑u có sË c§nh i vào b¨ng sË c§nh i ra.

• i∑u kiªn ı.

Gi£ s˚ a Á th‡ G là Á th‡ liên thông y∏u, mÎt ønh A có sË c§nh i

Một phần của tài liệu một số vấn đề về đường đi euler và chi trình euler (Trang 26)

Tải bản đầy đủ (PDF)

(66 trang)