Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 36 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
36
Dung lượng
804,5 KB
Nội dung
Lý thuyết đồ thị
Chương 2: Đường đi và chu trình
1
Đường đi và chu trình Euler
Bài toán “Königsburg Bridges” (Leonhard Euler,
1707-1783)
Xác định một chu trình đi qua tất cả 7 cây cầu,
mỗi cái đúng 1 lần.
2
Đường đi và chu trình Euler
D
A
B
C
3
Đường đi và chu trình Euler
Định nghĩa: Xét 1 đồ thị liên thông G.
Một đường đi Euler của G là một đường đi
đơn giản có đỉnh bắt đầu khác đỉnh kết thúc
và qua tất cả các cạnh của G. Khi này G còn
được gọi là một đường đi Euler.
Một chu trình Euler của G là một chu trình
đơn giản đi qua tất cả các cạnh của G. Khi
này G còn được gọi là một chu trình Euler.
4
Đường đi và chu trình Euler
Định lý 2.1 (Định lý Euler 1):
Cho 1 đồ thị vô hướng G liên thông và có
hơn 1 đỉnh. Khi đó, G có chu trình Euler nếu
và chỉ nếu mọi đỉnh của G đều có bậc chẵn.
A
E
B
D
C
Chu trình Euler:
DEABCEBD
5
Đường đi và chu trình Euler
Thuật toán tìm chu trình Euler của đồ thị
G(V, E)
Kết quả sẽ cho ra C là một chu trình Euler
bao gồm thứ tự các cạnh của chu trình.
6
7
Đường đi và chu trình Euler
1 2 3 4 5 6
1
3
2
4
5
6
1
2
3
4
5
6
0 1 1 0 0 0
1
1
0
0
0
0
1
1
1
0
1
0
1
0
1
1
1
0
0
0
1
0
0
0
1
0
1
0
1
0
C = Ø, v = 1
8
Đường đi và chu trình Euler
1 2 3 4 5 6
1
3
2
4
5
6
1
2
3
4
5
6
0 0 1 0 0 0
0
1
0
0
0
0
1
1
1
0
1
0
1
0
1
1
1
0
0
0
1
0
0
0
1
0
1
0
1
0
C = 1,2
9
Đường đi và chu trình Euler
1 2 3 4 5 6
1
3
2
4
5
6
1
2
3
4
5
6
0 0 1 0 0 0
0
1
0
0
0
0
0
1
1
0
0
0
1
0
1
1
1
0
0
0
1
0
0
0
1
0
1
0
1
0
C = 1,2,3
10
Đường đi và chu trình Euler
1 2 3 4 5 6
1
3
2
4
5
C = 1,2,3,1
6
1
2
3
4
5
6
0 0 0 0 0 0
0
0
0
0
0
0
0
1
1
0
0
0
1
0
1
1
1
0
0
0
1
0
0
0
1
0
1
0
1
0
E≠Ø
11
Đường đi và chu trình Euler
1 2 3 4 5 6
1
3
2
4
5
C = 1,2,4,
6
1
2
3
4
5
6
0 0 0 0 0 0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
1
0
1
0
0
0
1
0
0
0
1
0
1
0
1
0
,3,1
12
Đường đi và chu trình Euler
1 2 3 4 5 6
1
3
2
4
5
C = 1,2,4,3,
6
1
2
3
4
5
6
0 0 0 0 0 0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
1
0
1
0
1
0
,3,1
13
Đường đi và chu trình Euler
1 2 3 4 5 6
1
3
2
4
5
6
1
2
3
4
5
6
0 0 0 0 0 0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
1
0
C = 1,2,4,3,6, ,3,1
14
Đường đi và chu trình Euler
1 2 3 4 5 6
1
3
2
4
5
6
1
2
3
4
5
6
0 0 0 0 0 0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
C = 1,2,4,3,6,5, ,3,1
15
Đường đi và chu trình Euler
1 2 3 4 5 6
1
3
2
4
5
6
C = 1,2,4,3,6,5,2,3,1
1
2
3
4
5
6
0 0 0 0 0 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
E=Ø
16
Đường đi và chu trình Euler
Định lý 2.2 (Định lý Euler 2):
Cho một đồ thi vô hướng G liên thông và có
hơn 1 đỉnh. Khi đó, G có đường đi Euler nếu
và chỉ nếu G có đúng 2 đỉnh bậc lẻ.
A
E
B
D
C
Đường đi Euler:
DEABECBDC,
DEABCEBDC
17
Đường đi và chu trình Euler
Định lý 2.3 (Định lý Euler 3):
Cho đồ thị có hướng G liên thông và có hơn
1 đỉnh. Khi đó, G có chu trình Euler nếu và
chỉ nếu G cân bằng.
A
E
B
Chu trình Euler:
DEABCEBD
D
C
18
Đường đi và chu trình Euler
Định lý 2.4 (Định lý Euler 4):
Cho đồ thị có hướng G liên thông và có hơn
1 đỉnh. Khi đó, G có đường đi Euler nếu và
chỉ nếu trong G có 2 đỉnh a, b thỏa:
dout(a) = din(a) + 1
din(b) = dout(b) + 1
mọi đỉnh còn lại đều cân bằng và đường
Euler phải bắt đầu tại a và kết thúc tại b.
19
Đường đi và chu trình Euler
A
E
B
D
C
Đường đi Euler:
DEABCEBDC,
DEBCEABDC
20
Đường đi và chu trình Hamilton (18051865)
Định nghĩa:
Xét 1 đồ thị liên thông G có hơn 1 đỉnh
Một đường đi Hamilton của G là một đường
đi sơ cấp qua tất cả các đỉnh của G.
Một chu trình Hamilton của G là một chu trình
sơ cấp qua tất cả các đỉnh của G.
21
Đường đi và chu trình Hamilton
A
E
Đường đi Hamilton: ABECD
B
D
E
A
C
B
Đường đi Hamilton: BAECD
D
C
22
Đường đi và chu trình Hamilton
A
B
Chu trình Hamilton: ABCDA
D
A
C
B
Chu trình Hamilton: ACBDA
D
C
23
Đường đi và chu trình Hamilton
1.
2.
3.
4.
Qui tắc tìm chu trình Hamilton
Nếu tồn tại 1 đỉnh của G có bậc ≤ 1 thì G không
có chu trình Hamilton.
Nếu đỉnh x có bậc 2 thì cả 2 cạnh tới x đều phải
thuộc chu trình Hamilton.
Chu trình Hamilton không chứa bất kỳ chu trình
con thực sự nào.
Trong quá trình xây dựng chu trình Hamilton, sau
khi đã lấy 2 cạnh tới 1 đỉnh x đặt vào chu trình rồi
thì không thể lấy thêm cạnh nào tới x nữa. Do đó
có thể xóa mọi cạnh còn lại tới x trong G.
24
Đường đi và chu trình Hamilton
5
4
3
2
6
Xét đỉnh 1, chọn 2
cạnh (1,2) và (1,6)
1
7
8
9
25
Đường đi và chu trình Hamilton
5
4
3
2
6
1
7
8
9
•Xóa các cạnh (1,5), (1,4),
(1,3), (1,7), (1,8), (1,9) (theo
quy tắc 4).
•Các đỉnh 3, 4, 5 bậc 2, do
đó các cạnh (2,3), (3,4),
(4,5), (5,6) phải thuộc chu
trình Hamilton (quy tắc 2).
•Chu trình con: 1,2,3,4,5,6,1
(không xóa được cạnh nào
trong chu trình này).
26
Đường đi và chu trình Hamilton
5
4
3
2
6
1
7
8
9
•Chọn cạnh (1,2), (1,3). Xóa các
cạnh (1,4), (1,5), (1,6), (1,7),
(1,8), (1,9) (quy tắc 4).
•Xóa cạnh (2,3) để không tạo
chu trình (quy tắc 3).
•Các đỉnh 4, 5, 6, 7, 8, 9 có bậc
2 nên thuộc chu trình Hamilton
(quy tắc 2).
•Chu trình nhận được:
1,3,4,5,6,7,8,9,2,1.
27
Đường đi và chu trình Hamilton
Định lý 2.5: Mọi đồ thị đầy đủ đều có chu
trình Hamilton.
28
Đường đi và chu trình Hamilton
Định lý 2.6: Cho một đồ thị G. Giả sử có k đỉnh của G sao
cho nếu xóa đi k đỉnh này cùng với các cạnh liên kết với
chúng khỏi G thì đồ thị nhận được có hơn k thành phần.
Khi đó, G không có chu trình Hamilton.
1
1
2
2
3
4
5
6
8
5
6
7
9
10
8
7
10 29
Đường đi và chu trình Hamilton
Định lý 2.7 (Định lý Dirac):
Coi đồ thị G liên thông và có n đỉnh (n ≥ 3).
Nếu mọi đỉnh của G đều có bậc ≥ n/2 thì G
có chu trình Hamilton.
30
Đường đi và chu trình Hamilton
Định lý 2.8 (tổng quát của định lý 2.7):
Một đồ thị G có n đỉnh và 2 đỉnh bất kỳ nào
cũng có tổng các bậc ≥ n thì G có một chu
trình Hamilton.
31
Đường đi và chu trình Hamilton
Định lý 2.9:
Mọi đồ thị có hướng đầy đủ đều có đường đi
Hamilton.
A
B
Đường đi: CBDA
D
C
32
Tóm tắt
Một đường đi Euler của G là một đường đi
đơn giản có đỉnh bắt đầu khác đỉnh kết thúc
và qua tất cả các cạnh của G. Khi này G còn
được gọi là một đường đi Euler.
Một chu trình Euler của G là một chu trình
đơn giản đi qua tất cả các cạnh của G. Khi
này G còn được gọi là một chu trình Euler.
33
Tóm tắt
Cho 1 đồ thị vô hướng G liên thông và có
hơn 1 đỉnh. Khi đó, G có chu trình Euler nếu
và chỉ nếu mọi đỉnh của G đều có bậc chẵn.
Cho một đồ thi vô hướng G liên thông và có
hơn 1 đỉnh. Khi đó, G có đường đi Euler nếu
và chỉ nếu G có đúng 2 đỉnh bậc lẻ.
34
Tóm tắt
Cho đồ thị có hướng G liên thông và có hơn 1 đỉnh.
Khi đó, G có chu trình Euler nếu và chỉ nếu G cân
bằng.
Cho đồ thị có hướng G liên thông và có hơn 1 đỉnh.
Khi đó, G có đường đi Euler nếu và chỉ nếu trong G
có 2 đỉnh a, b thỏa:
dout(a) = din(a) + 1
din(b) = dout(b) + 1
mọi đỉnh còn lại đều cân bằng và đường Euler phải
bắt đầu tại a và kết thúc tại b.
35
Tóm tắt
Một đường đi Hamilton của G là một đường
đi sơ cấp qua tất cả các đỉnh của G.
Một chu trình Hamilton của G là một chu trình
sơ cấp qua tất cả các đỉnh của G.
Chưa có một điều kiện cần và đủ để xác định
chu trình Hamilton.
36
[...]... 20 Đường đi và chu trình Hamilton (18051865) Định nghĩa: Xét 1 đồ thị liên thông G có hơn 1 đỉnh Một đường đi Hamilton của G là một đường đi sơ cấp qua tất cả các đỉnh của G Một chu trình Hamilton của G là một chu trình sơ cấp qua tất cả các đỉnh của G 21 Đường đi và chu trình Hamilton A E Đường đi Hamilton: ABECD B D E A C B Đường đi Hamilton: BAECD D C 22 Đường đi và chu trình Hamilton A B Chu. .. bằng A E B Chu trình Euler: DEABCEBD D C 18 Đường đi và chu trình Euler Định lý 2.4 (Định lý Euler 4): Cho đồ thị có hướng G liên thông và có hơn 1 đỉnh Khi đó, G có đường đi Euler nếu và chỉ nếu trong G có 2 đỉnh a, b thỏa: dout(a) = din(a) + 1 din(b) = dout(b) + 1 mọi đỉnh còn lại đều cân bằng và đường Euler phải bắt đầu tại a và kết thúc tại b 19 Đường đi và chu trình Euler A E B D C Đường đi Euler:... Hamilton A B Chu trình Hamilton: ABCDA D A C B Chu trình Hamilton: ACBDA D C 23 Đường đi và chu trình Hamilton 1 2 3 4 Qui tắc tìm chu trình Hamilton Nếu tồn tại 1 đỉnh của G có bậc ≤ 1 thì G không có chu trình Hamilton Nếu đỉnh x có bậc 2 thì cả 2 cạnh tới x đều phải thuộc chu trình Hamilton Chu trình Hamilton không chứa bất kỳ chu trình con thực sự nào Trong quá trình xây dựng chu trình Hamilton,... 0 0 0 E=Ø 16 Đường đi và chu trình Euler Định lý 2.2 (Định lý Euler 2): Cho một đồ thi vô hướng G liên thông và có hơn 1 đỉnh Khi đó, G có đường đi Euler nếu và chỉ nếu G có đúng 2 đỉnh bậc lẻ A E B D C Đường đi Euler: DEABECBDC, DEABCEBDC 17 Đường đi và chu trình Euler Định lý 2.3 (Định lý Euler 3): Cho đồ thị có hướng G liên thông và có hơn 1 đỉnh Khi đó, G có chu trình Euler nếu và chỉ nếu G... 1,3,4,5,6,7,8,9,2,1 27 Đường đi và chu trình Hamilton Định lý 2.5: Mọi đồ thị đầy đủ đều có chu trình Hamilton 28 Đường đi và chu trình Hamilton Định lý 2.6: Cho một đồ thị G Giả sử có k đỉnh của G sao cho nếu xóa đi k đỉnh này cùng với các cạnh liên kết với chúng khỏi G thì đồ thị nhận được có hơn k thành phần Khi đó, G không có chu trình Hamilton 1 1 2 2 3 4 5 6 8 5 6 7 9 10 8 7 10 29 Đường đi và chu trình Hamilton... G liên thông và có n đỉnh (n ≥ 3) Nếu mọi đỉnh của G đều có bậc ≥ n/2 thì G có chu trình Hamilton 30 Đường đi và chu trình Hamilton Định lý 2.8 (tổng quát của định lý 2.7): Một đồ thị G có n đỉnh và 2 đỉnh bất kỳ nào cũng có tổng các bậc ≥ n thì G có một chu trình Hamilton 31 Đường đi và chu trình Hamilton Định lý 2.9: Mọi đồ thị có hướng đầy đủ đều có đường đi Hamilton A B Đường đi: CBDA D C 32... tắt Một đường đi Euler của G là một đường đi đơn giản có đỉnh bắt đầu khác đỉnh kết thúc và qua tất cả các cạnh của G Khi này G còn được gọi là một đường đi Euler Một chu trình Euler của G là một chu trình đơn giản đi qua tất cả các cạnh của G Khi này G còn được gọi là một chu trình Euler 33 Tóm tắt Cho 1 đồ thị vô hướng G liên thông và có hơn 1 đỉnh Khi đó, G có chu trình Euler nếu và chỉ nếu... phải thuộc chu trình Hamilton (quy tắc 2) Chu trình con: 1,2,3,4,5,6,1 (không xóa được cạnh nào trong chu trình này) 26 Đường đi và chu trình Hamilton 5 4 3 2 6 1 7 8 9 •Chọn cạnh (1,2), (1,3) Xóa các cạnh (1,4), (1,5), (1,6), (1,7), (1,8), (1,9) (quy tắc 4) •Xóa cạnh (2,3) để không tạo chu trình (quy tắc 3) •Các đỉnh 4, 5, 6, 7, 8, 9 có bậc 2 nên thuộc chu trình Hamilton (quy tắc 2) Chu trình nhận.. .Đường đi và chu trình Euler 1 2 3 4 5 6 1 3 2 4 5 C = 1,2,3,1 6 1 2 3 4 5 6 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 1 0 1 1 1 0 0 0 1 0 0 0 1 0 1 0 1 0 E≠Ø 11 Đường đi và chu trình Euler 1 2 3 4 5 6 1 3 2 4 5 C = 1,2,4, 6 1 2 3 4 5 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 1 0 1 0 0 0 1 0 0 0 1 0 1 0 1 0 ,3,1 12 Đường đi và chu trình Euler 1 2 3 4 5 6 1 3 2 4 5 C =... 0 0 1 0 0 0 1 0 1 0 1 0 ,3,1 13 Đường đi và chu trình Euler 1 2 3 4 5 6 1 3 2 4 5 6 1 2 3 4 5 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 1 0 C = 1,2,4,3,6, ,3,1 14 Đường đi và chu trình Euler 1 2 3 4 5 6 1 3 2 4 5 6 1 2 3 4 5 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 C = 1,2,4,3,6,5, ,3,1 15 Đường đi và chu trình Euler 1 2 3 4 5 6 1 3 2 4 5 ... 22 Đường chu trình Hamilton A B Chu trình Hamilton: ABCDA D A C B Chu trình Hamilton: ACBDA D C 23 Đường chu trình Hamilton Qui tắc tìm chu trình Hamilton Nếu tồn đỉnh G có bậc ≤ G chu trình. .. Euler Thuật toán tìm chu trình Euler đồ thị G(V, E) Kết cho C chu trình Euler bao gồm thứ tự cạnh chu trình Đường chu trình Euler 6 1 0 1 0 0 1 1 1 1 0 0 1 C = Ø, v = Đường chu trình Euler 6.. .Đường chu trình Euler Bài toán “Königsburg Bridges” (Leonhard Euler, 1707-1783) Xác định chu trình qua tất cầu, lần Đường chu trình Euler D A B C Đường chu trình Euler