Title: B
1Bài 1Ð?NH NGHIA VÀ PHÂN LO?I
- B? môn Khoa h?c máy tính
- Khoa Công ngh? thông tin - SPHN
2N?I DUNG
- Ð?nh nghia d? th? ?
- 1.1. Ð? th? vô hu?ng
- 1.2. Ð? th? có hu?ng
- Phân lo?i d? th? ?
31. Ð?NH NGHIA Ð? TH?
- Khái ni?m d? th? là m?t mô hình toán h?c dùng d?
gi?i quy?t r?t nhi?u bài toán và các v?n d? toán
h?c. - M?t d? th? có th? hi?u m?t cách don gi?n là m?t
h? th?ng các d?nh và các c?nh n?i các d?nh này
v?i nhau. - Ví d? M?t b?n d? giao thông là m?t d? th? v?i
h? th?ng d?nh là các ngã ba, ngã tu. Các du?ng di
là các c?nh c?a d? th?.
41. Ð?NH NGHIA Ð? TH?
- 1.1. Ð? th? vô hu?ng
- Ví d? Cho t?p V 2, 3, 4, 5,6. Hãy bi?u di?n
quan h? nguyên t? cùng nhau c?a t?p trên.
51. Ð?NH NGHIA Ð? TH?
- 1.1. Ð? th? vô hu?ng
- Ð? th? vô hu?ng G (V, E). Trong dó
- V là t?p h?p, các ph?n t? c?a nó du?c g?i
là d?nh. - E là t?p h?p, m?i ph?n t? là m?t c?p không
th? t? (v, w) c?a 2 d?nh thu?c V. - (v, w) du?c g?i là c?nh n?i v và w.
- ? (v, w ) ? (w, v)
61. Ð?NH NGHIA Ð? TH?
- 1.1. Ð? th? vô hu?ng
- Ví d? Ð? th? c?nh tranh trong sinh thái h?c
- M?i loài là du?c bi?u di?n b?ng m?t d?nh.
- N?u hai loài c?nh tranh th?c an v?i nhau thì hai
d?nh tuong ?ng có c?nh n?i
71. Ð?NH NGHIA Ð? TH?
- 1.2. Ð? th? có hu?ng
- Ví d? Cho t?p V 2, 3, 4, 5,6. Hãy bi?u di?n
quan h? aRb ? a là u?c c?a b và a ? b
81. Ð?NH NGHIA Ð? TH?
- 1.2. Ð? th? có hu?ng
- Ð? th? có hu?ng G V, E. Trong dó
- V là t?p h?p, các ph?n t? c?a nó du?c g?i
là d?nh. - E là t?p h?p, m?i ph?n t? là m?t c?p có th?
t? v, w c?a hai d?nh c?a t?p V. - v, w g?i là cung t? v d?n w.
- ? v, w ? w, v
91. Ð?NH NGHIA Ð? TH?
- 1.2. Ð? th? có hu?ng
- Ví d? Ð? th? thi d?u vòng tròn.
- a, b có nghia là d?i a th?ng d?i b
101. Ð?NH NGHIA Ð? TH?
- M?t s? thu?t ng? C?nh e(v,w)?E, v?V, w?V, khi
dó - e là c?nh liên thu?c v, w.
- v, w du?c g?i là k? nhau
- v, w g?i là d?nh d?u mút c?a c?nh e.
- N?u ev,w thì v g?i là d?nh d?u (d?nh xu?t
phát), w là d?nh cu?i (d?nh dích) c?a cung e. - N?u v ? w thì e du?c g?i là khuyên.
- N?u có e (v,w) thì e và e du?c g?i là hai
c?nh song song (cùng liên thu?c m?t c?p d?nh).
111. Ð?NH NGHIA Ð? TH?
- Ví d?
- C?nh a liên thu?c 2 d?nh 1 và 2.
- Ð?nh 1 và 2 g?i là hai d?nh k? nhau.
- C?nh c là khuyên
- C?nh d và e song song
122. PHÂN LO?I Ð? TH?
- Phân lo?i theo tính ch?t c?nh c?a d? th?
- Ð? th? vô hu?ng là d? th? mà t?t c? các c?nh là
c?nh vô hu?ng. - Ð? th? có hu?ng là d? th? mà t?t c? các c?nh là
có hu?ng. - Ð? th? h?n h?p là d? th? có c? c?nh vô hu?ng và
c?nh có hu?ng.
132. PHÂN LO?I Ð? TH?
- Ví d? Ð? th? h?n h?p
- M?t b?n d? giao thông cùa Hà N?i là m?t d? th?
h?n h?p. Trong dó - Các d?nh bi?u di?n các nút giao thông (ngã ba,
ngã tu du?ng) - Các c?nh bi?u di?n các con du?ng n?i các nút
giao thông dó. - C?nh có hu?ng n?u là du?ng m?t chi?u
- C?nh vô hu?ng n?u là du?ng hai chi?u.
142. PHÂN LO?I Ð? TH?
- Ngoài ra, ta còn có
- Ð? th? don là d? th? mà không có khuyên và c?nh
song song. - Ð? th? di?m là d? th? ch? có m?t d?nh và không
có c?nh nào. - Ð? th? r?ng là d? th? không có d?nh và không có
c?nh.
152. PHÂN LO?I Ð? TH?
- Các bài sau dây chúng ta ch? nó v? d? th? vô
hu?ng. - ? bài cu?i cùng chúng ta s? nói v? d? th? có
hu?ng.
16Bài 2CÁC Y?U T? CO B?N C?A Ð? TH?
- B? môn Khoa h?c máy tính
- Khoa Công ngh? thông tin - SPHN
17N?I DUNG
- Ð? th? con và d? th? thành ph?n ?
- 1.1. Ð? th? con
- 1.2. Ð? th? thành ph?n
- B?c c?a d?nh ?
- Ðu?ng di và chu trình ?
- Liên thông
- 4.1. Khái ni?m ?
- 4.2. Thành ph?n liên thông ?
- 4.3. Ð?nh c?t, c?nh c?u ?
- 4.4. Ch? s? liên thông ?
181. Ð? TH? CON VÀ Ð? TH? THÀNH PH?N
- 1.1. Ð? th? con
- Ð?nh nghia
- Cho G (V, E).
- G (V, E)
- N?u V ? V
- E ? E
- Thì G g?i là d? th? con c?a G.
191. Ð? TH? CON VÀ Ð? TH? THÀNH PH?N
- 1.1. Ð? th? con
- Ví d? d? th? con
G1 là d? th? con c?a G
201. Ð? TH? CON VÀ Ð? TH? THÀNH PH?N
- 1.1. Ð? th? con
- Ví d? d? th? con
G2 là d? th? con c?a G
211. Ð? TH? CON VÀ Ð? TH? THÀNH PH?N
- 1.1. Ð? th? con
- Ví d? d? th? con
G3 là không là d? th? con c?a G
221. Ð? TH? CON VÀ Ð? TH? THÀNH PH?N
- 1.2. Ð? th? thành ph?n
- Ð?nh nghia
- Cho G (V, E).
- G (V, E)
- N?u V ? V
- ? v, w ?V và (v, w) ?E thì (v, w) ?E
- Thì G g?i là d? th? thành ph?n c?a G.
231. Ð? TH? CON VÀ Ð? TH? THÀNH PH?N
G4 là d? th? thành ph?n c?a G
241. Ð? TH? CON VÀ Ð? TH? THÀNH PH?N
G5 là d? th? con nhung không là d? th? ph?n c?a G
252. B?C C?A Ð?NH
- Cho G (V, E), v ? V.
- B?c c?a v b?ng s? c?nh liên thu?c v?i nó.
- T?i v có khuyên thì thêm 2 don v?.
- Ký hi?u là deg(v).
- Tru?ng h?p d?c bi?t
- Deg(v) 0 ? v là d?nh cô l?p
- Deg(v) 1 ? v là d?nh treo
262. B?C C?A Ð?NH
Ví d? deg(A) 0 deg(B) 1 deg(C) 1 deg(D)
4 deg(E) 2 deg(F) 3 deg(G) 4 deg(H)
1 A là d?nh cô l?p. B, C, H là d?nh treo.
272. B?C C?A Ð?NH
- Ð?nh lý Cho G (V,E) có m c?nh. Khi dó
H? qu? G (V,E) có s? d?nh có b?c l? là s? ch?n.
283. ÐU?NG ÐI VÀ CHU TRÌNH
Ðu?ng di là dãy các c?nh ei (vi, vi1) (i1,
2,, m) dãy các d?nh trên du?ng di v1, v2, , vm,
vm 1. Ký hi?u H (v1, e1, v2, e2, , em,
vm1) Ðu?ng di H (v1, e1, v2, , em, vm1)
mà v1? vm1 du?c g?i là chu trình. Ð?
dài du?ng di (chu trình) b?ng s? c?nh c?a nó.
Khi d? th? là don thì du?ng di (chu trình) du?c
ký hi?u don gi?n b?ng dãy các d?nh. H
(v1, v2, , vm, vm1) C (v1,
v2, , vm, v1)
293. ÐU?NG ÐI VÀ CHU TRÌNH
A, D, C, G, E - du?ng di d? dài 4 D, E, C, A
không là du?ng di B, C, G, E, B chu trình d?
dài 4
303. ÐU?NG ÐI VÀ CHU TRÌNH
Nh?n xét - Khuyên là m?t chu trình d? dài 1. -
N?u d? th? có c?p c?nh song song thì có chu trình
d? dài 2. - M?t d? th? không là d? th? don thì
luôn có chu trình (d? dài 1 ho?c 2) - Trong d?
th? don m?i chu trình d? dài ít nh?t là 3, không
ph?i lúc nào cung tìm du?c m?t chu trình.
314. LIÊN THÔNG
- 4.1. Khái ni?m
- Hai d?nh liên thông v và w du?c g?i là liên
thông v?i nhau n?u có m?t dãy c?nh k? ti?p n?i v
v?i w. - Ví d?
A và D, E và H là các c?p d?nh liên thông A và E,
B và H là các c?p d?nh không liên thông
324. LIÊN THÔNG
- 4.1. Khái ni?m
- Tính ch?t co b?n c?a quan h? liên thông hai d?nh
- ? v ?V thì v liên thông v?i chính nó.
- v liên thông v?i w thì w liên thông v?i v
- N?u v liên thông w và w liên thông u thì v và u
liên thông. - Quan h? liên thông hai d?nh là quan h? tuong
duong.
334. LIÊN THÔNG
- 4.1. Khái ni?m
- Ð? th? liên thông là m?t d? th? mà hai d?nh b?t
k? liên thông v?i nhau. - Ví d?
Là d? th? liên thông
Không là d? th? liên thông
344. LIÊN THÔNG
- 4.2. Thành ph?n liên thông
- Quan h? liên thông gi?a các d?nh phân ho?ch t?p
d?nh V thành các t?p con tho? mãn hai d?nh b?t
k? - N?u thu?c cùng m?t t?p con thì liên thông v?i
nhau. - N?u thu?c hai t?p con khác nhau thì không liên
thông v?i nhau.
354. LIÊN THÔNG
- 4.2. Thành ph?n liên thông
- M?i t?p con trong phân ho?ch cùng v?i các c?nh
n?i các d?nh c?a chúng t?o thành m?t d? th? thành
ph?n. - Ð? th? thành ph?n này du?c g?i là thành ph?n liên
thông c?a d? th? dã cho. - ? M?t d? th? không liên thông du?c chia thành các
d? th? thành ph?n liên thông.
364. LIÊN THÔNG
- 4.2. Thành ph?n liên thông
- Ví d?
Có hai thành ph?n liên thông
374. LIÊN THÔNG
- 4.3. Ð?nh c?t, c?nh c?u
- Ð?nh c?t v du?c g?i là d?nh c?t n?u b? nó cùng
các c?nh liên thu?c s? làm tang s? thành ph?n
liên thông c?a d? th? con. - C?nh c?u e du?c g?i là c?nh c?u n?u xoá nó thì
s? làm tang s? thành ph?n liên thông c?a d? th?
con.
384. LIÊN THÔNG
- 4.3. Ð?nh c?t, c?nh c?u
- Ví d?
A không là d?nh c?t
394. LIÊN THÔNG
4.3. Ð?nh c?t, c?nh c?u Ví d?
B là d?nh c?t
404. LIÊN THÔNG
- 4.3. Ð?nh c?t, c?nh c?u
- Ví d?
C là d?nh c?t
414. LIÊN THÔNG
- 4.3. Ð?nh c?t, c?nh c?u
- Ví d?
B C E là d?nh c?t
424. LIÊN THÔNG
- 4.3. Ð?nh c?t, c?nh c?u
- Ví d?
(A, B) là c?nh c?u
434. LIÊN THÔNG
- 4.3. Ð?nh c?t, c?nh c?u
- Ví d?
(B, C) không là c?nh c?u
444. LIÊN THÔNG
- 4.3. Ð?nh c?t, c?nh c?u
- Ví d?
(A, B) (C, E) là c?nh c?u
454. LIÊN THÔNG
- 4.4. Ch? s? liên thông
- Cho G (V,E) liên thông, k ? N, k 2.
- N?u xoá di t (tlt k) d?nh b?t k? d? th? thu du?c
v?n là liên thông thì nói G là d? th? k-liên
thông - S? t? nhiên l?n nh?t k tho? mãn di?u ki?n
- - G là k - liên thông.
- - Nhung không có (k 1) liên thông
- Khi dó k du?c g?i là ch? s? liên thông c?a G.
464. LIÊN THÔNG
- 4.4. Ch? s? liên thông
- Ví d?
474. LIÊN THÔNG
- 4.4. Ch? s? liên thông
- Ví d?
G là 2-liên thông
48Bài 3M?T S? Ð? TH? ÐON VÔ HU?NG Ð?C BI?T
- B? môn Khoa h?c máy tính
- Khoa Công ngh? thông tin SPHN
49N?I DUNG
- 1. Ð? th? d?y d? ?
- 2. Ð? th? vòng ?
- 3. Ð? th? hình bánh xe ?
- 4. Ð? th? hình kh?i ?
- 5. Ð? th? d?u ?
- 6. Ð? th? lu?ng phân ?
501. Ð? TH? Ð?Y Ð?
- Ð? th? d?y d? n d?nh, ký hi?u Kn, là don d? th?
vô hu?ng mà gi?a hai d?nh b?t k? d?u có c?nh n?i.
- Kn có
- n d?nh.
- deg(v) n 1.
- n.(n-1)/2 c?nh.
511. Ð? TH? Ð?Y Ð?
- Trong d?i s?ng chúng ta g?p nhi?u mô hình c?a d?
th? d?y d? - - Bi?u di?n quan h? quen bi?t c?a các h?c sinh
trong m?t l?p h?c. - - Bi?u di?n các c?p d?u trong m?t gi?i thi d?u
mà các d?i thi d?u vòng tròn m?t lu?t
522. Ð? TH? VÒNG
- Ð? th? vòng Cn (n 3) là m?t d? th? có n d?nh
v1, v2, , vn và có n c?nh (v1, v2), (v2, v3), ,
(vn-1, vn), (vn, v1). - Ví d?
- Cn có
- n d?nh, deg(v) 2, n c?nh.
533. Ð? TH? HÌNH BÁNH XE
- Ð? th? hình bánh xe Cho chu trình Cn (n3) và
th?c hi?n - Thêm m?t d?nh vnew.
- Thêm các c?nh n?i vnew v?i d?nh c?a chu trình
- Ta s? du?c d? th? hình bánh xe. Ký hi?u là Wn
(n3).
- Wn có
- n 1 d?nh.
- deg(vnew) n, deg(v) 3, ? v ? vnew
- 2n c?nh.
543. Ð? TH? HÌNH BÁNH XE
554. Ð? TH? HÌNH KH?I
- Ð? th? kh?i n chi?u (n??1), ký hi?u Qn là d? th?
có 2n d?nh, m?i d?nh bi?u di?n b?ng m?t xâu nh?
phân d? dài n. Hai d?nh k? nhau khi và ch? khi
các xâu nh? phân bi?u di?n chúng khác nhau dúng 1
bít. - B?c c?a m?i d?nh b?ng n
- S? c?nh là n.2n-1
564. Ð? TH? HÌNH KH?I
Ví d?
575. Ð? TH? Ð?U
- Ð? th? d?u b?c k là don d? th? mà m?i d?nh d?u
có b?c k. - Ð? th? d?u b?c k có n d?nh, khi dó
- Deg(vi) k, i 1, ,n
- Có (nk)/2 c?nh.
- Ví d?
- Chu trình Cn là d? th? d?u b?c 2.
- Ð? th? d?y d? Kn là d?u b?c n 1.
586. Ð? TH? LU?NG PHÂN
- G (V, E) du?c g?i là d? th? lu?ng phân n?u t?p
d?nh du?c phân ho?ch thành V1 và V2 sao cho m?i
c?nh c?a d? th? ch? n?i m?t d?nh c?a V1 v?i m?t
d?nh c?a V2. Kí hi?u G (V1, V2, E)
Ví d?
596. Ð? TH? LU?NG PHÂN
- Hai tính ch?t c?a d? th? lu?ng phân
- (1) M?i d? th? con c?a d? th? lu?ng phân cung là
m?t d? th? lu?ng phân - (2) Ð? th? lu?ng phân không có khuyên
- Ví d? Xét d? th? bi?u di?n quan h? hôn nhân c?a
m?t làng. - - M?i d?nh bi?u di?n m?t ngu?i
- - M?i c?nh bi?u di?n quan h? v? ch?ng gi?a 2
ngu?i - ? Ð? th? hai phía v?i V1 là t?p g?m dàn ông, V2
là t?p g?m dàn bà.
606. Ð? TH? LU?NG PHÂN
- Ð?nh lí M?t d? th? G là d? th? lu?ng phân khi
và ch? khi m?i chu trình c?a nó có d? dài ch?n. - Ch?ng minh
- Ði?u ki?n c?n Gi? s? G (V1, V2, E) là d? th?
lu?ng phân. - Xét m?t chu trình b?t k? c?a G (v1, v2, , vn,
v1). N?u v1?V1 thì v2 ?V2, c? nhu v?y vn?V2 và n
là s? ch?n. T?c là chu trình có d? dài ch?n.
616. Ð? TH? LU?NG PHÂN
- Ði?u ki?n d? Gi? s? G (V, E) là d? th? mà t?t
c? các chu trình có d? dài ch?n. - Ta ch?ng minh r?ng m?i thành ph?n liên thông c?a
G là m?t d? th? lu?ng phân. - Xét thành ph?n G1 có d?nh v0.
- V?i m?i d?nh v c?a G1 ta ch?n du?ng di D n?i v0
v?i v. - N?u d? dài du?ng di D là ch?n thì v?V1, n?u d?
dài l? thì v ?V2.
626. Ð? TH? LU?NG PHÂN
- V?i hai t?p d?nh V1 và V2 du?c thi?t l?p nhu
trên dã phân ho?ch t?p d?nh c?a G1 thành 2 ph?n
tho? mãn m?i c?nh ch? n?i m?t d?nh c?a V1 v?i m?t
d?nh c?a V2. - Nhu v?y, G1 là d? th? lu?ng phân
- ? G là d? th? lu?ng phân.
636. Ð? TH? LU?NG PHÂN
- Ð? th? G (V, E) là d? th? lu?ng phân d?y d?, ký
hi?u là Km,n, n?u G là d? th? hai phía, t?p d?nh
V phân ho?ch thành 2 t?p V1, V2 mà V1 m và
V2 n. Gi?a hai d?nh b?t k? không cùng trong
m?t l?p d?nh thì luôn có dúng m?t c?nh n?i. - V?i Km,n nhu trên, có
- m n d?nh.
- deg(v) n ? v ? V1, deg(w) m ? w ? V2.
- (m.n)/2 c?nh.
646. Ð? TH? LU?NG PHÂN
65Bài 4BI?U DI?N Ð? TH? TRÊN MÁY TÍNHS? Ð?NG C?U
HAI Ð? TH?
- B? môn Khoa h?c máy tính
- Khoa Công ngh? thông tin SPHN
66N?I DUNG
- Ma tr?n k? ?
- Ma tr?n tr?ng s? ?
- Ma tr?n liên thu?c ?
- S? d?ng c?u gi?a hai d? th? ?
671. MA TR?N K?
- Cho G (V, E), V v1, v2, , vn .
- Ma tr?n k? bi?u di?n G là A aijn x n.
- aij là s? c?nh liên thu?c hai d?nh vi và vj.
Ví d?
681. MA TR?N K?
- Nh?n xét
- - Ma tr?n k? c?a d? th? vô hu?ng là ma tr?n d?i
x?ng - - T?ng các ph?n t? dòng (c?t) c?a ma tr?n k?
chính b?ng b?c c?a d?nh tuong ?ng (không có
khuyên). - - Xét ma tr?n tích Ap A.AA (p th?a s?). Khi
dó aijp là s? du?ng di khác nhau d? dài p t? d?nh
i d?n d?nh j.
692. MA TR?NG S?
- Ð? th? có tr?ng s?
- Cho G (V, E) có
- - V v1, v2, , vn
- ?e ? E, e du?c gán tr?ng s? c(e).
- Ma tr?n tr?ng s? bi?u di?n G là C cijn x n
Trong dó ? ? 0, ?, -?
702. MA TR?NG S?
Ví d? Cij 0 khi (vi, vj) ?E
713. MA TR?N LIÊN THU?C
- Cho G (V, E), v?i
- - V v1, v2, , vn
- - E e1, e2, , em
- Ma tr?n liên thu?c bi?u di?n G là M mij n x m
723. MA LIÊN THU?C
- Nh?n xét
- Hai c?t gi?ng nhau tuong ?ng v?i hai c?nh song
song - C?t mà ch? có m?t ph?n t? b?ng 1 tuong ?ng v?i
khuyên. - N?u d? th? không có khuyên thì t?ng các ph?n t?
theo hàng chính b?ng b?c c?a d?nh tuong ?ng.
734. S? Ð?NG C?U GI?A HAI Ð? TH?
- Trong hoá h?c, các d? th? du?c dùng d? t?o mô
hình các h?p ch?t. Có nhi?u ch?t có cùng công
th?c phân t? nhung c?u trúc khác nhau. Chúng du?c
bi?u di?n b?ng các d? th? khác nhau. - ?Các d? th? có cùng c?u trúc du?c g?i là các d?
th? d?ng c?u bi?u di?n mô hình c?a cùng m?t ch?t. - Ví d? Xét công th?c phân t? C2H4O2.
744. S? Ð?NG C?U GI?A HAI Ð? TH?
- Cho hai don d? th? G1 (V1, E1) và G2 (V2,
E2) - N?u t?n t?i m?t song ánh
- f V1 ? V2
- Sao cho f b?o toàn quan h? li?n k? gi?a các c?p
d?nh, t?c là - (v, w) ? E1 khi và ch? khi (f(v), f(w))
?E2. - Khi dó G1 và G2 du?c g?i là d?ng c?u v?i nhau.
- f du?c g?i là m?t phép d?ng c?u.
754. S? Ð?NG C?U GI?A HAI Ð? TH?
f 1, 2, 3, 4? a, b, c, d f(1) a f(2)
c f(3) b f(4) d (1, 2) (a, c) (1, 4)
(a, d) (2, 3) (c, b) (3, 4) (b, d)
G và H d?ng c?u v?i nhau
764. S? Ð?NG C?U GI?A HAI Ð? TH?
- Nh?n xét
- - Ð? xác d?nh s? d?ng c?u gi?a hai d? th? là m?t
bài toán không don gi?n, vì gi?a hai d? th? có n
d?nh t?n t?i t?i n! song ánh gi?a hai t?p d?nh. - - Ð? ch? ra hai d? th? không d?ng c?u v?i nhau ta
ch? ra chúng không có m?t tính ch?t mà hai d? th?
d?ng c?u ph?i có - S? lu?ng d?nh
- S? lu?ng c?nh
- B?c c?a các d?nh
774. S? Ð?NG C?U GI?A HAI Ð? TH?
S? d?nh cùng 4 d?nh. S? c?nh cùng 4 c?nh.
B?c c?a d?nh G m?i d?nh có b?c 2. H 2
d?nh b?c 2, 1 d?nh b?c 3, 1 d?nh b?c 1.
G và H không d?ng c?u v?i nhau
784. S? Ð?NG C?U GI?A HAI Ð? TH?
S? d?nh cùng 4 d?nh. S? c?nh cùng 4 c?nh.
B?c c?a d?nh G 2 d?nh b?c 2, 2 d?nh b?c 3
(m?i d?nh b?c 2 k? v?i 2 d?nh b?c 3). H 2
d?nh b?c 2, 2 d?nh b?c 3 (m?i d?nh b?c 2 k? v?i
m?t d?nh b?c 3 và m?t d?nh b?c 2.
G và H không d?ng c?u v?i nhau
79Bài 5ÐU?NG M?T NÉT EULER VÀ CHU TRÌNH HAMILTON
- B? môn Khoa h?c máy tính
- Khoa Công ngh? thông tin SPHN
801. ÐU?NG M?T NÉT EULER
B?y cây c?u ? thành ph? Konigsberg
811. ÐU?NG M?T NÉT EULER
- Cho m?t d? th? vô hu?ng có n d?nh, m c?nh.
- M?t dãy ch?a t?t c? m c?nh c?a d? th? và có d?ng
- v1, e1, v2, e2, , vm, em, vm1
- Sao cho c?nh ei n?i hai d?nh vi và vi1.
- Dãy c?nh dó g?i là du?ng m?t nét Euler.
- N?u v1 ? vm1 thì g?i du?ng m?t nét Euler khép
kín. - N?u v1 ? vm1 thì g?i du?ng m?t nét Euler m?.
821. ÐU?NG M?T NÉT EULER
- Ð?nh lý 1 G (V, E) có du?ng m?t nét Euler khép
kín khi và ch? khi m?i d?nh c?a V có b?c ch?n. - Ð?nh lý 2 G (V, E) có du?ng m?t nét Euler m?
khi và ch? khi s? d?nh b?c l? c?a G là 2. - Ð? th? Euler du?c ?ng d?ng trong các bài toán
th?c t? nhu tìm hành trình ng?n nh?t cho ngu?i
dua thu, xe thu rác, c?nh sát tu?n tra.
831. ÐU?NG M?T NÉT EULER
G1 có du?ng m?t nét Euler kín
841. ÐU?NG M?T NÉT EULER
G2 có du?ng m?t nét Euler m?
851. ÐU?NG M?T NÉT EULER
G2 không có du?ng m?t nét Euler
861. ÐU?NG M?T NÉT EULER
- Thu?t toán tìm du?ng m?t nét Euler khép kín
- Bu?c 1 Ch?n d?nh a làm d?nh b?t d?u. Xây d?ng
du?ng m?t nét kép kín con C. - Bu?c 2 Lo?i b? các c?nh trong C kh?i d? th?.
Lo?i b? các d?nh cô l?p (n?u có). - Bu?c 3 L?y m?t d?nh chung c?a C và d? th? còn
l?i d? xây d?ng du?ng m?t nét con ti?p theo C.
R?i khép vào C và quay l?i bu?c 2. L?p cho d?n
khi cách c?nh du?c dua h?t vào C.
871. ÐU?NG M?T NÉT EULER
Ðu?ng m?t nét khép kín A C E A
881. ÐU?NG M?T NÉT EULER
Ðu?ng m?t nét khép kín A C E A
Ðu?ng m?t nét khép kín A C E A D B - A
891. ÐU?NG M?T NÉT EULER
Ðu?ng m?t nét khép kín A C E A D B - A
Ðu?ng m?t nét khép kín Euler A C E A D
E F D B - A
902. CHU TRÌNH HAMILTON
- Cho G (V, E), n?u t?n t?i m?t chu trình C di
qua t?t c? các d?nh và m?i d?nh dúng m?t l?n. Khi
dó C g?i là chu trình Hamilton. - N?u t?n t?i du?ng di H có tính ch?t nhu trên thì
H du?c g?i là du?ng di Hamilton. - V?n d? tìm chu trình Hamilton trong d? th? du?c
nhà toán h?c Anh là Hamilton nêu ra nam 1858. - Ð?n nay, vi?c tìm tiêu chu?n d? nh?n bi?t d? th?
Hamilton v?n là m? và cung chua có thu?t toán
hi?u qu? d? ki?m tra m?t d? th? có là Hamilton
hay không?
912. CHU TRÌNH HAMILTON
- Whiney (1931) Trong d? th? ph?ng có m?i mi?n là
m?t tam giác v?i di?u ki?n 3 c?nh b?t k? c?a nó
l?p thành m?t tam giác ch? khi tam giác dó là m?t
mi?n c?a d? th? thì d? th? là Hamilton - Tutte M?i d? th? ph?ng 4-liên thông d?nh d?u có
m?t chu trình Hamilton - Dirac (1952) Ðon d? th? vô hu?ng G có n gt 2
d?nh, m?i d?nh có b?c không nh? hon n/2 là d? th?
Hamilton
922. CHU TRÌNH HAMILTON
G1 không ch?a du?ng di và chu trình Hamilton G2
ch?a du?ng di Hamilton G3 ch?a chu trình Hamilton
932. CHU TRÌNH HAMILTON
- Thu?t toán li?t kê t?t c? các chu trình Hamilton
- Thu?t toán du?c xây d?ng trên co s? thu?t toán
quay lui cho phép li?t kê t?t c? các chu trình
Hamilton. - Phát tri?n m?t dãy d?nh x1, x2, , xk,
c?a d? th? G (V, E) cho b?i danh sách k? Ke(v),
v?V
942. CHU TRÌNH HAMILTON
- Thu?t toán li?t kê t?t c? các chu trình Hamilton
- Procedure Hamilton(k)
- Begin
- For y?Ke(xk-1) do
- if (kn1)and(yv0) then GhiNhan(x1, , xn,
v0) - else if ChuaXety then
- Begin
- xk y
- ChuaXety False
- Hamilton(k1)
- ChuaXety True
- End
- End
- Begin
- For v?V do ChuaXetv True
- x1 v0
- ChuaXetv0 False
- Hamilton(2)
- End.
952. CHU TRÌNH HAMILTON
96 Bài 6 Ð? TH? PH?NGVÀ BÀI TOÁN TÔ MÀU Ð? TH?
- B? môn Khoa h?c máy tính
- Khoa Công ngh? thông tin SPHN
97N?I DUNG
- Khái ni?m d? th? ph?ng ?
- Công th?c Euler ?
- Ð?nh lý Kuratowski ?
- Tô màu d? th? ?
981. KHÁI NI?M Ð? TH? PH?NG
- Bài toán Xây du?ng di t? ba ngôi nhà v?i ba
gi?ng riêng r? nhu hình sau.
?Có cách nào mà không có các du?ng c?t nhau.
991. KHÁI NI?M Ð? TH? PH?NG
- Mô hình hoá bài toán b?ng d? th? phân dôi d?y d?
K3.3.
Khi dó câu h?i trên du?c di?n d?t nhu sau T?n
t?i hay không cách v? d? th? phân dôi d?y d? K3,3
trên m?t m?t ph?ng sao cho không có hai c?nh nào
c?t nhau?
1001. KHÁI NI?M Ð? TH? PH?NG
- M?t d? th? du?c g?i là d? th? ph?ng n?u ta có th?
v? nó trên m?t m?t ph?ng sao cho không có các
c?nh nào c?t nhau ? m?t di?m không ph?i là d?nh
c?a d? th?. - Chú ý m?t d? th? có th? du?c v? b?ng nhi?u cách
khác nhau. N?u t?n t?i m?t cách v? tho? mãn d?nh
nghia trên thì nó là d? th? ph?ng.
1011. KHÁI NI?M Ð? TH? PH?NG
K4 là d? th? ph?ng.
1021. KHÁI NI?M Ð? TH? PH?NG
Q3 là d? th? ph?ng.
1032. CÔNG TH?C EULER
- Mi?n ph?ng
- Bi?u di?n ph?ng c?a d? th? chia m?t ph?ng thành
các mi?n khác nhau (k? c? mi?n vô h?n).
Ví d? d? th? ph?ng sau chia m?t ph?ng thành các
mi?n A, B, C, D nhu hình v?.
1042. CÔNG TH?C EULER
- Công th?c Euler
- Cho G là m?t don d? th? ph?ng liên thông v?i m là
s? c?nh và n là s? d?nh. G?i f là s? mi?n trên
bi?u di?n ph?ng c?a G. - Khi dó
f n m 2
T?ng quát hóa G là m?t d? th? ph?ng v?i n d?nh,
m c?nh, f mi?n ph?ng, ?(G) là s? thành ph?n liên
thông. Khi dó ta có f n m ?(G) 1
1052. CÔNG TH?C EULER
- Ví d? 1
- Ð? th? bên có
- e 7
- v 5
- Ta có
- f e v 2
- 7 5 2
- 4
1062. CÔNG TH?C EULER
- Ví d? 2 Ch?ng minh r?ng K3,3 không ph?i là d?
th? ph?ng. - Gi?i Gi? s? K3,3 là d? th? ph?ng.
- M?i chu trình c?a K3,3 g?m ít nh?t là 4 c?nh.
- Nên m?i mi?n b? gi?i h?n b?i ít nh?t 4 c?nh.
- T?ng s? c?nh gi?i h?n các m?t là 4f.
- Mà m?t c?nh thu?c vào hai mi?n.
- Do dó 2e 4f ? 2e 4(e v 2)
- Ta có 2e 2.9 18
- 4(e v 2) 4(9 - 6 2) 20
- Vô lý.
- Nhu v?y K3,3 không là d? th? ph?ng.
1073. Ð?NH LÝ KURATOWSKI
- Ta có K3,3 và K5 không là d? th? ph?ng.
- N?u K3,3 ho?c K5 là d? th? con c?a G thì G là d?
th? không ph?ng. - Phép nhân chia so c?p c?nh (u, v) trên d? th? là
- Lo?i b? c?nh này kh?i d? th?.
- Thêm vào d?nh w và hai c?nh (u, w), (w,v).
- Hai d? th? G và H du?c g?i là d?ng phôi n?u chúng
có th? nh?n du?c t? cùng m?t d? th? b?ng m?t dãy
các phép nhân chia so c?p.
1083. Ð?NH LÝ KURATOWSKI
Ví d? G2 và G3 là hai d? th? d?ng phôi vì chúng
có th? nh?n du?c t? d? th? G1 b?ng các phép phân
chia so c?p.
- Ð?nh lý Kuratowski M?t d? th? là d? th? ph?ng
khi và ch? khi nó không ch?a d? th? con d?ng phôi
v?i K3,3 ho?c K5
1094. TÔ MÀU Ð? TH?
- Bài toán Ð? phân bi?t các mi?n trên b?n d? ta
ph?i tô màu chúng b?ng các màu khác nhau. - H?i c?n ít nh?t bao nhiêu màu d? tô m?t b?n d?
b?t k? sao cho các mi?n k? nhau không cùng m?t
màu.
1104. T Ô MÀU Ð? TH?
- Mô hình hoá bài toán
- M?i mi?n tuong ?ng m?t d?nh c?a d? th?.
- Hai d?nh có c?nh n?i n?u chúng là hai mi?n có
chung biên gi?i. - Ð? th? nh?n du?c g?i là d? th? d?i ng?u c?a b?n
d?. - Ð? th? d?i ng?u c?a b?n d? là d? th? ph?ng.
- Bài toán tuong duong tô màu các d?nh c?a d? th?
sao cho hai d?nh k? nhau thì du?c tô b?i hai màu
khác nhau.
1114. TÔ MÀU Ð? TH?
1124. T Ô MÀU Ð? TH?
- Ð?nh nghia Tô màu d? th? là vi?c gán màu cho các
d?nh c?a d? th? sao cho không có hai d?nh k? nhau
du?c gán cùng m?t màu. - Ð?nh nghia s? màu c?a m?t d? th? là s? màu t?i
thi?u c?n d? tô màu d? th? này. - Ð?nh lý 4 màu s? màu c?a m?t d? th? ph?ng b?t k?
là m?t s? không l?n hon 4. - Nh?n xét
- S? màu c?a d? th? lu?ng phân là 2 màu.
- S? màu c?a d? th? d?y d? Kn là n màu
1134. TÔ MÀU Ð? TH?
B
C
A
E
D
1144. TÔ MÀU Ð? TH?
- Ví d? Bài toán l?p l?ch thi
- Hãy l?p l?ch thi trong tru?ng d?i h?c sao cho
không có sinh viên nào ph?i thi d?ng th?i hai môn
cùng m?t lúc - Gi?i Mô hình hóa bài toán nhu sau
- M?i d?nh là m?t môn thi
- Hai d?nh có c?nh n?i n?u dó là hai môn mà m?t
sinh viên nào dó ph?i thi. - Th?i gian m?i môn thi ?ng v?i m?t màu.
- Bài toán tr? thành bài toán tô màu cho d? th?
trên sao cho hai d?nh k? nhau có màu khác nhau.
115Bài 7BÀI TOÁN TÌM ÐU?NG ÐI NG?N NH?T
- B? môn Khoa h?c máy tính
- Khoa Công ngh? thông tin SPHN
1161. BÀI TOÁN TH?C T?
- Có 6 di?m du l?ch trong m?t khu sinh thái là a,
b, c, d, e, z. Gi?a hai di?m có th? có ho?c không
có du?ng di tr?c ti?p. - Hãy tìm du?ng di có kho?ng cách ng?n nh?t t? di?m
a d?n z.
1171. BÀI TOÁN TH?C T?
- Bài toán du?c mô hình hoá b?ng d? th? có tr?ng s?
nhu sau - M?i d?nh bi?u di?n m?t di?m du l?ch.
- Hai d?nh có c?nh n?i n?u có du?ng di tr?c ti?p.
- Tr?ng s? c?a c?nh du?c gán là kho?ng cách t?
di?m này sang di?m kia.
1181. BÀI TOÁN TH?C T?
- Ð? th? mô hình hoá bài toán
Ðu?ng di ng?n nh?t là du?ng di có t?ng tr?ng s?
cách c?nh c?a nó là nh? nh?t.
1192. THU?T TOÁN DIJKSTRA
- Bài toán Tìm du?ng di ng?n nh?t t? d?nh a d?n z
c?a d? th? có tr?ng s? liên thông G (V, E). - Thu?t toán Dijkstra (d? xu?t nam 1959 do nhà toán
h?c Hà Lan E.Dijkstra) - G?i L(v) là d? dài du?ng di ng?n nh?t t? d?nh a
d?n d?nh v. - S là t?p các d?nh dã tìm du?c du?ng di ng?n nh?t
t? a d?n nó. - Pr(v) là d?nh ngay tru?c d?nh v trên du?ng di
ng?n nh?t
1202. THU?T TOÁN DIJKSTRA
- Thu?t toán
- Bu?c 1 L(a) 0, S Ø, ? v?S, v ? a L(v) ?
- Bu?c 2 N?u z ?S thì k?t thúc.
- Bu?c 3 Ch?n v ?S sao cho L(v) là nh? nh?t.
- Ðua v vào S.
- Bu?c 4 v?i m?i d?nh x li?n k? v và x ?S
- N?u L(x) gt L(v) c(v, x) thì
- L(x) L(v) c(v,x) và Pr(x)
v - Quay l?i bu?c 2.
1213. VÍ D?
- B1 L(a) 0, S ?
- L(b) L(c) L(d) L(e) L(z) ?
B2 v a, S a. L(b) min?, 2 0
2 L(d) min?, 3 0 3
B3 v b, S a,b, L(c) 7, L(e) 4, L(d)
3, L(z)?
B4 v d, S a,b,d, L(c) 7, L(e) 4, L(z)
?
B5 v e, S a,b,d,e, L(c) 5, L(z) 8
B6 v c, S a,b,d,e, L(z) 7
1223. VÍ D?
Ðu?ng di ng?n nh?t t? a d?n z là
a b e c - z
1233. VÍ D?
- Tìm du?ng di ng?n nh?t t? A d?n cách d?nh còn l?i
trong d? th? sau
1243. VÍ D?
(3,A)
(0,?)
(6,A)
(2,A)
(4,A)
1253. VÍ D?
(3,A)
(0,?)
(6,A)
(2,A)
(3,C)
(4,A)
1263. VÍ D?
(3,A)
(0,?)
(6,A)
(2,A)
(8,B)
(3,C)
1273. VÍ D?
(3,A)
(0,?)
(6,A)
(5,E)
(2,A)
(8,B)
(7,E)
(3,C)
1283. VÍ D?
A B (3) A C (2) A C E (3)
A C E D (5) A C E F (7)
129Bài 8CÂY VÀ ?NG D?NG
B? môn Khoa h?c máy tính Khoa Công ngh? thông
tin SPHN
130N?I DUNG
- Cây ?
- Cây nh? phân tìm ki?m ?
- Cây bi?u th?c s? h?c ?
- Duy?t cây nh? phân ?
1311. CÂY
- Ð?nh nghia Cây là m?t don d? th? vô hu?ng, liên
thông và không có chu trình. - Cây có g?c n?u ta ch?n m?t d?nh d?c bi?t g?i là
g?c c?a cây và d?nh hu?ng các c?nh trên cây t?
g?c di ra thì ta du?c m?t d? th? có hu?ng g?i là
cây có g?c. - Ch?n d?nh làm g?c khác nhau s? t?o ra các cây
khác nhau.
1321. CÂY
1331. CÂY
- M?t s? khái ni?m Cho T là m?t cây có g?c, v là
m?t d?nh khác g?c c?a T. - Cha c?a v là d?nh u n?u có m?t c?nh có hu?ng
duy nh?t t? u ? v. Khi dó, u du?c g?i là cha c?a
v v là con c?a u. - Anh em là các d?nh có cùng cha.
- T? tiên c?a m?t d?nh khác g?c là các d?nh trên
du?ng di t? g?c d?n d?nh dó. - Con cháu c?a v là các d?nh có v là t? tiên.
- Lá là d?nh không có con.
- Ð?nh trong là các d?nh có con.
1341. CÂY
- Cây con v?i g?c a là d? th? con c?a cây dang
xét, bao g?m a và các con cháu c?a nó cùng t?t c?
các c?nh liên thu?c v?i các con cháu c?a a. - M?c c?a m?t d?nh là kho?ng cách t? g?c d?n
nó. - Chi?u cao c?a cây m?c l?n nh?t c?a m?t d?nh
b?t k? trong cây g?i là chi?u cao c?a cây.
1351. CÂY
- Con c?a a là b, c, d - Cha c?a b, c, d là a -
b, c, d là anh em. - Con cháu c?a d là g, h, i,
l, m - T? tiên c?a g là a, d. - a, b, d, f, h là
d?nh trong
- - e, c, j, k, l, m, i là lá
- - Cây bên ph?i là cây con g?c d c?a cây bên trái
- - M?c c?a b, c, d là 1. M?c c?a e, f, g, h, i là
2. - - Chi?u cao c?a cây là 3
1361. CÂY
- Ð?nh lí 1 M?t cây b?t kì v?i ít nh?t 2 d?nh thì
có ít nh?t hai d?nh treo. - Ð?nh lí 2 M?t cây có n d?nh có dúng n 1 c?nh.
1371. CÂY
- Ð?nh lý Daisy Chain Cho T là m?t d? th? có n
d?nh. Khi dó các kh?ng d?nh sau là tuong duong - (1) T là m?t cây.
- (2) T không có chu trình và có n - 1 c?nh.
- (3) T là m?t d? th? liên thông và n?u h?y b?t k?
m?t c?nh nào c?a nó cung làm m?t tính liên thông.
- (4) Gi?a 2 d?nh b?t k? c?a T, luôn t?n t?i m?t
du?ng di don duy nh?t n?i 2 d?nh này. - (5) T không có chu trình và n?u thêm m?t c?nh
m?i n?i 2 d?nh b?t k? c?a T thì s? t?o ra m?t chu
trình. - (6) T liên thông và có n - 1 c?nh.
1382. CÂY NH? PHÂN TÌM KI?M
- Ð?nh nghia cây nh? phân là m?t cây có g?c. M?i
d?nh trong c?a cây không có quá hai con, trong dó
có m?t con bên trái và con bên ph?i. - Cây nh? phân du?c g?i là d?y d? n?u m?i d?nh
trong c?a nó có dúng 2 con. - Cây nh? phân tìm ki?m là m?t cây nh? phân tho?
mãn - (1) M?i d?nh du?c gán m?t khoá khác nhau.
- (2) Khoá c?a m?t d?nh trong l?n hon khoá con trái
và nh? hon khoa con ph?i c?a nó.
1392. CÂY NH? PHÂN TÌM KI?M
- Thu?t toán xây d?ng cây nh? phân tìm ki?m cho m?t
dãy khoá. - (1) Ch?n khoá v0 làm g?c.
- (2) L?p v?i m?i khoá v còn l?i th?c hi?n nhu
sau - v0 ? g?c.
- v gt v0 N?u v0 dã có con ph?i thì v0 ? con ph?i
- n?u không thì v là con ph?i c?a
v0. - v lt v0 N?u v dã có con trái thì v0 ? con trái
- n?u không thì v là con trái c?a
v0. - Thu?t toán k?t thúc khi m?i khoá dã du?c dua vào
cây.
1402. CÂY NH? PHÂN TÌM KI?M
- Ví d? 11, 8, 7, 10, 12, 16, 14, 17
1412. CÂY NH? PHÂN TÌM KI?M
- Ví d? 11, 8, 7, 10, 12, 16, 14, 17
Tìm khoá 16 So sánh 11. so sánh 12. So
sánh 16. 16 có trong dãy dã cho
1422. CÂY NH? PHÂN TÌM KI?M
- Ví d? 11, 8, 7, 10, 12, 16, 14, 17
Tìm khoá 15 So sánh 11. so sánh 12. So
sánh 16. So sánh 14. 15 không có trong dãy dã
cho
1433. CÂY BI?U TH?C S? H?C
- Cây bi?u di?n bi?u th?c s? h?c là m?t cây nh?
phân tho? mãn - (1) Nút trong bi?u di?n toán t? 2 ngôi ? ( - /
). - (2) Lá bi?u di?n cho m?t toán h?ng c?a bi?u th?c.
- Bi?u th?c E1 ? E2 du?c bi?u di?n b?i cây có
- G?c bi?u di?n ?.
- Con trái bi?u di?n cho bi?u th?c E1.
- Con ph?i bi?u di?n cho bi?u th?c E2.
1443. CÂY BI?U TH?C S? H?C
1454. DUY?T CÂY NH? PHÂN
- 3 phuong pháp duy?t cây nh? phân
- Duy?t ti?n t? (PreOrder)
- (1) Duy?t nút g?c.
- (2) Duy?t con trái theo phuong pháp ti?n t?.
- (3) Duy?t con ph?i theo phuong pháp ti?n t?.
- Duy?t trung t? (InOrder)
- (1) Duy?t con trái theo phuong pháp trung t?.
- (2) Duy?t nút g?c.
- (3) Duy?t con ph?i theo phuong pháp trung t?.
1464. DUY?T CÂY NH? PHÂN
- Duy?t h?u t? (PostOrder)
- (1) Duy?t con trái theo phuong pháp h?u t?.
- (2) Duy?t con ph?i theo phuong pháp h?u t?.
- (3) Duy?t nút g?c.
1474. DUY?T CÂY NH? PHÂN
- Ví d? Duy?t cây nh? phân sau theo phuong pháp
ti?n t?
1484. DUY?T CÂY NH? PHÂN
- Ví d? Duy?t cây nh? phân sau theo phuong pháp
trung t?
1494. DUY?T CÂY NH? PHÂN
- Ví d? Duy?t cây nh? phân sau theo phuong pháp
h?u t?
150Bài 9 CÂY KHUNG C?A Ð? TH?
- B? môn Khoa h?c máy tính
- Khoa Công ngh? thông tin - SPHN
151N?I DUNG
- Ð?nh nghia ?
- Xác d?nh cây khung ?
- 2.1. Theo chi?u r?ng
- 2.2. Theo chi?u sâu
- 3. Cây khung nh? nh?t ?
1521. Ð?NH NGHIA
- Ð?nh nghia cây khung Cho d? th? G (V, E) là
m?t d? th? vô hu?ng liên thông. - Cây T (V, F) v?i F là t?p con c?a E du?c g?i là
cây khung c?a d? th? G. - Ví d?
1532. XÁC Ð?NH CÂY KHUNG
- Xác d?nh cây khung là vi?c xây d?ng m?t cây ch?a
t?t c? các d?nh c?a d? th?. - Hai thu?t toán xác d?nh cây khung là
- Xác d?nh uu tiên theo chi?u r?ng.
- Xác d?nh uu tiên theo chi?u sâu.
1542. XÁC Ð?NH CÂY KHUNG
- 2.1. Theo chi?u sâu.
- Bu?c 1 L?y m?t d?nh a làm g?c c?a cây khung.
- Bu?c 2 Xây d?ng du?ng di t? d?nh này b?ng cách
ghép l?n lu?t các c?nh vào. M?i c?nh du?c ghép
vào n?i d?nh cu?i cùng c?a du?ng di và m?t d?nh
chua có trong cây. Th?c hi?n d?n khi không ghép
du?c thêm c?nh nào n?a. - Bu?c 3 N?u du?ng di ch?a t?t c? các d?nh c?a
d? th? thì dó chính là cây khung. N?u không thì
chuy?n sang bu?c 4. - Bu?c 4 Quay lui l?i d?nh ngay tru?c d?nh cu?i
cùng c?a du?ng di và xây d?ng du?ng di m?i b?t
d?u t? d?nh này. N?u không du?c thì lùi ti?p d?nh
n?a.
1552. XÁC Ð?NH CÂY KHUNG
- 2.1. Theo chi?u sâu
- Ví d?
TT C?nh ghép vào
1 (A,B)
2 (B,F)
3 (F,G)
4 (G,E)
5 (E,D)
6 (D,C)
1562. XÁC Ð?NH CÂY KHUNG
- 2.2. Theo chi?u r?ng
- Các bu?c th?c hi?n c?a BFS(v)
- Bu?c 1 Ch?n d?nh a làm g?c c?a cây.
- Bu?c 2 ghép các c?nh liên thu?c v?i g?c. Các
d?nh k? v?i g?c trong bu?c này có m?c là 1. - Bu?c 3 ti?p t?c ghép các c?nh liên thu?c d?nh
m?c 1 sao cho không t?o chu trình. Các d?nh du?c
dua vào ? bu?c này có m?c là 2. - Bu?c 4 Ti?p t?c quá trình khi t?t c? các d?nh
dã du?c ghép vào cây.
1572. XÁC Ð?NH CÂY KHUNG
- 2.1. Theo chi?u sâu
- Ví d?
TT C?nh ghép vào
1 (A,B)
2 (A,C)
3 (A,D)
4 (B,F)
5 (D,G)
6 (D,E)
1582. XÁC Ð?NH CÂY KHUNG
- ?ng d?ng hai thu?t toán trên
- Tìm du?ng di gi?a hai d?nh. Ðu?ng di xây d?ng khi
uu tiên theo chi?u r?ng là du?ng di ng?n nh?t. - - Tìm các thành ph?n liên thông c?a d? th?.
- - Thu?t toán theo chi?u sâu d? tìm chu trình.
1593. CÂY KHUNG NH? NH?T
- Ð?nh nghia cây khung nh? nh?t
- Cây khung nh? nh?t trong m?t d? th? liên thông,
có tr?ng s? là m?t cây khung có t?ng tr?ng s?
trên các c?nh c?a nó là nh? nh?t. - Thu?t toán tìm cây khung nh? nh?t
- Prim (Robert Prim - 1957)
- Kruskal (Joseph Kruskal 1965)
1603. CÂY KHUNG NH? NH?T
- Thu?t toán Prim
- Ð? th? G (V, E) liên thông, có n d?nh.
- (1) Ch?n m?t c?nh b?t k? có tr?ng s? nh? nh?t,
d?t nó vào cây khung. - (2) L?n lu?t ghép vào cây các c?nh có tr?ng s?
nh? nh?t liên thu?c v?i m?t d?nh c?a cây và không
t?o ra chu trình trong cây. - Thu?t toán d?ng l?i khi n ? 1 c?nh du?c ghép vào
cây.
1613. CÂY KHUNG NH? NH?T
- Ví d? Dùng thu?t toán Prim tìm cây khung nh?
nh?t c?a d? th? sau
G
Cây khung c?a G Tr?ng s? 12
C?nh dã du?c ch?n
C?nh có th? ch?n
1623. CÂY KHUNG NH? NH?T
- Thu?t toán Kruskal
- Ð? th? G (V, E) liên thông, có n d?nh.
- (1) Ch?n m?t c?nh b?t k? có tr?ng s? nh? nh?t,
d?t nó vào cây khung. - (2) L?n lu?t ghép vào cây các c?nh có tr?ng s?
nh? nh?t mà không t?o ra chu trình trong cây. - Thu?t toán d?ng l?i khi n ? 1 c?nh du?c ghép vào
cây.
1633. CÂY KHUNG NH? NH?T
- Ví d? Dùng thu?t toán Kruskal tìm cây khung nh?
nh?t c?a d? th? sau
G
Cây khung c?a G Tr?ng s? 12
C?nh dã du?c ch?n
164Bài 10 Ð? TH? CÓ HU?NG
- B? môn Khoa h?c máy tính
- Khoa Công ngh? thông tin - SPHN
165N?I DUNG
- B?c c?a d?nh ?
- Bi?u di?n d? th? trên máy tính ?
- Dây chuy?n, bang chuy?n và chu trình ?
- Ð? th? có hu?ng liên thông ?
- Ð? th? ph?n chu trình ?
1661. B?C C?A Ð?NH
- B?c c?a d?nh Cho G V, E, v ?V. Ta có
- deg-(v) (b?c vào) là s? c?nh nh?n v là d?nh
cu?i (d?nh vào) - deg(v) (b?c ra) là s? c?nh nh?n v là d?nh d?u
(d?nh ra). - M?t khuyên trên d? th? có hu?ng s? dóng góp 2 don
v? vào b?c vào và b?c ra tuong ?ng c?a d?nh dó.
1671. B?C C?A Ð?NH
deg(1) 2, deg-(1) 0 deg(2) 1, deg-(2)
2 deg(3) 1, deg-(3) 1 deg(4) 0, deg-(4)
2 deg(5) 2, deg-(5) 1
Chú ý deg(v) 0 ? v là d?nh h? luu. deg-(v)
0 ? v là d?nh ngu?n.
1681. B?C C?A Ð?NH
Ð?nh lý Gi? s? G V, E là m?t d? th? có hu?ng
có m cung khi dó
1692. BI?U DI?N Ð? TH? TRÊN MÁY TÍNH
- Ma tr?n k? Cho don d? th? G V, E
- v?i V v1,
, vn - Ma tr?n k? A aijn x n bi?u di?n G.
- aij là s? cung di t? vi d?n vj
- Ví d?
1702. BI?U DI?N Ð? TH? TRÊN MÁY TÍNH
- Ma tr?n k? liên thu?c
- Cho don d? th? G V,E
- v?i V v1, , vn
- E e1, e2, , em
- Ma tr?n k? M mijn x m bi?u di?n G du?c xác
d?nh nhu sau - mij 1 n?u vi là d?nh ra ej
- mij -1 n?u vi là d?nh vào ej
- mij 0 n?u ej là không liên thu?c vi
1712. BI?U DI?N Ð? TH? TRÊN MÁY TÍNH
1723. DÂY CHUY?N, BANG CHUY?N VÀ CHU TRÌNH
- Dây chuy?n là m?t dãy các cung e1, e2, , ek sao
cho khi b? hu?ng di thì nó tr? thành m?t dãy c?nh
k? ti?p trong d? th? vô hu?ng thu du?c - Bang chuy?n là m?t dây chuy?n e1, e2, , ek mà
d?nh dích c?a cung ei là d?nh xu?t phát c?a cung
ei1 v?i i 1,, k-1. - Chu trình là m?t bang chuy?n khép kín.
1733. DÂY CHUY?N, BANG CHUY?N VÀ CHU TRÌNH
1,2-2,4-5,4 là dây chuy?n. 1,3-3,2-2,4
là bang chuy?n. 3,2-2,4-4,3 là chu trình
1743. DÂY CHUY?N, BANG CHUY?N VÀ CHU TRÌNH
- Dây chuy?n (bang chuy?n) co b?n là nh?ng dây
chuy?n (bang chuy?n) mà m?i d?nh ch? xu?t hi?n
nhi?u nh?t m?t l?n. - Bang chuy?n co b?n ch?a t?t c? các d?nh c?a d?
th? du?c g?i là bang chuy?n Hamilton. - Chu trình co b?n ch?a t?t c? các c?nh c?a d? th?
du?c g?i là chu trình Euler. - Khuyên du?c coi là chu trình có d? dài 1.
1754. Ð? TH? CÓ HU?NG LIÊN THÔNG
- Cho G V, E, khi dó
- 2 d?nh v và w du?c g?i là liên thông y?u n?u
t?n t?i dây truy?n n?i chúng. - G là liên thông y?u n?u hai d?nh b?t k? d?u
liên thông y?u. - G là liên thông m?nh n?u hai d?nh b?t k? du?c
n?i v?i nhau b?i m?t bang chuy?n.
1764. Ð? TH? CÓ HU?NG LIÊN THÔNG
Ví d?
G là liên thông y?u H là liên thông m?nh
1775. Ð? TH? PH?N CHU TRÌNH
- Ð? th? ph?n chu trình là m?t d? th? có hu?ng G
không ch?a chu trình. - Ð?nh lý 1 trong m?i d? th? ph?n chu trình luôn
t?n t?i ít nh?t m?t d?nh ngu?n và m?t d?nh h?
luu. - Ð?nh lý 2 d? th? có hu?ng G V, E v?i n d?nh
là d? th? ph?n chu trình khi và ch? khi chúng ta
có th? dánh s? các d?nh c?a d? th? b?i 1, 2, , n
sao cho m?i c?nh i, j tho? mãn quan h? i lt j.
1785. Ð? TH? PH?N CHU TRÌNH
Ð?nh h? luu
Ð?nh ngu?n