Professional Documents
Culture Documents
Chương 5 - Lý thuyết đồ thị
Chương 5 - Lý thuyết đồ thị
LÝ THUYẾT ĐỒ THỊ
Nội dung chương 5
1 /51
Khái niệm cơ bản về đồ thị
Ví dụ
Liệu chúng ta có thể vẽ một nét dọc theo các cung
như trong hình vẽ (không có cung nào được vẽ lại)?
•
• •
•
2 /51
Khái niệm cơ bản về đồ thị
Định nghĩa
Đồ thị là một cặp G = (V , E ) ở đó V là tập hữu
hạn khác rỗng và E là tập gồm các cặp 2 phần tử
của V .
(V là tập các đỉnh ( vertices), E là tập các cạnh
( edges, hay là cạnh hoặc cung nối hai đỉnh của V )
3 /51
Khái niệm cơ bản về đồ thị
Ví dụ
G = (V , E ), ở đó:
V = {1, 2, 3, 4, 5} và
E = {{1, 2}, {1, 3}, {1, 4}, {2, 4}, {4, 5}
3
•
• 4
2 •
• •
1 5
4 /51
Khái niệm cơ bản về đồ thị
Định nghĩa
Giải sử G = (V , E ) là một đồ thị và hai đỉnh
u, v ∈ V . Chúng ta nói đỉnh u kề với đỉnh v nếu
{u, v } ∈ E . Ký hiệu u ∼ v chỉ đỉnh u là kề với đỉnh
v.
5 /51
Khái niệm cơ bản về đồ thị
Ví dụ
= (V , E ), với V = {1, 2, 3, 4, 5} và
Cho G
E = {1, 2}, {1, 3}, {1, 4}, {2, 4}, {4, 5} như hình
vẽ
3
•
• 4
2 •
• •
1 5
7 /51
Chú ý về đồ thị
7 /51
Chú ý về đồ thị
7 /51
Lân cận và bậc của đỉnh
Định nghĩa
Gọi G = (V , E ) là một đồ thị
Nếu u và v là hai đỉnh kề nhau thì ta cũng nói
u và v là hai đỉnh lân cận của nhau.
8 /51
Lân cận và bậc của đỉnh
Định nghĩa
Gọi G = (V , E ) là một đồ thị
Nếu u và v là hai đỉnh kề nhau thì ta cũng nói
u và v là hai đỉnh lân cận của nhau.
Tập tất cả các đỉnh lân cận của đỉnh v được
gọi là lân cận của v và ký hiệu là N(v )
N(v ) = {u ∈ V : u ∼ v }
8 /51
Lân cận và bậc của đỉnh
Định nghĩa
Gọi G = (V , E ) là một đồ thị
Nếu u và v là hai đỉnh kề nhau thì ta cũng nói
u và v là hai đỉnh lân cận của nhau.
Tập tất cả các đỉnh lân cận của đỉnh v được
gọi là lân cận của v và ký hiệu là N(v )
N(v ) = {u ∈ V : u ∼ v }
d(v ) = |N(v )|
8 /51
Lân cận và bậc của đỉnh
Ví dụ
thị G = (V , E ), với V = {1, 2, 3, 4, 5} và
Cho đồ
E = {1, 2}, {1, 3}, {1, 4}, {2, 4}, {4, 5}
3
•
• 4
2 •
• •
1 5
Định lý
Cho G = (V , E ) là một đồ thị, khi đó:
X
d(v ) = 2|E |
v ∈V
10 /51
Khái niệm cơ bản về đồ thị
Định lý
Cho G = (V , E ) là một đồ thị, khi đó:
X
d(v ) = 2|E |
v ∈V
Ví dụ 4
•
3 • • 5
•
2 • 6
• •
1 7
Định nghĩa
Giả sử có tập n đỉnh V = {v1 , v2 , . . . , vn } đã được
sắp xếp của đồ thị G = (V , E ). Ma trận
A = (Aij )n×n ở đó
(
1 nếu i = j hoặc vi ∼ vj
Aij =
0 nếu vi 6∼ vj
11 /51
Ma trận kề
Ví dụ
4
•
3 • • 5
•
2 • 6
• •
1 7
12 /51
Các khái niệm và ký hiệu
13 /51
Các khái niệm và ký hiệu
13 /51
Các khái niệm và ký hiệu
•
3 • • 5
•
2 • 6
• •
1 7
13 /51
Các khái niệm và ký hiệu
•
3 • • 5
• •
2 • 8 6
• •
1 7
14 /51
Các khái niệm và ký hiệu
15 /51
Các khái niệm và ký hiệu
15 /51
Các khái niệm và ký hiệu
15 /51
Các khái niệm và ký hiệu
15 /51
Các khái niệm và ký hiệu
Ví dụ
16 /51
Các khái niệm và ký hiệu
Ví dụ
4
•
3 •
2 •
•
1
16 /51
Luyện tập
17 /51
Luyện tập
18 /51
Luyện tập
19 /51
Luyện tập
Bài tập 4: Tồn tại hay không một đồ thị chính qui
cấp 5 mà mỗi đỉnh có bậc bằng 3?
19 /51
Luyện tập
Bài tập 4: Tồn tại hay không một đồ thị chính qui
cấp 5 mà mỗi đỉnh có bậc bằng 3?
19 /51
Đồ thị con
Định nghĩa
Giả sử G và H là các đồ thị. Ta gọi G là đồ thị con
của H nếu V (G ) ⊆ V (H) và E (G ) ⊆ E (H)
20 /51
Đồ thị con
Định nghĩa
Giả sử G và H là các đồ thị. Ta gọi G là đồ thị con
của H nếu V (G ) ⊆ V (H) và E (G ) ⊆ E (H)
Ví dụ
Đồ thị G là con của H dưới đây
4 4
• •
3 • • 5
3 • • 5
• • •
2 • 6
2 • 8 6
• • • •
1 7 1 7
G H
20 /51
Đồ thị con bao trùm
Định nghĩa
Giả sử G và H là các đồ thị. Ta gọi G là đồ thị con
bao trùm của H nếu E (G ) ⊆ E (H) và
V (G ) = V (H).
21 /51
Đồ thị con bao trùm
Định nghĩa
Giả sử G và H là các đồ thị. Ta gọi G là đồ thị con
bao trùm của H nếu E (G ) ⊆ E (H) và
V (G ) = V (H).
Ví dụ
Đồ thị G dưới đây là đồ thị con bao trùm của H
4 4
• •
3 • • 5
3 • • 5
• • • •
2 • 8 6
2 • 8 6
• • • •
7 7
1
G 1
H
21 /51
Loại bỏ cạnh, đỉnh của đồ thị
22 /51
Loại bỏ cạnh, đỉnh của đồ thị
Định nghĩa
Cho H là một đồ thị và gọi A là tập con của tập
các đỉnh của H, hay A ⊆ V (H). Ta nói đồ thị con
của H được cảm sinh bởi A là đồ thị H[A] được xác
định bởi:
(i) V (H[A]) = A, và
(ii) E (H[A]) = {xy ∈ E (H) : x ∈ A và y ∈ A}
23 /51
Đồ thị con cảm sinh
Ví dụ
Với A = {2, 4, 5, 6, 8}, hãy tìm đồ thị cảm sinh bởi
A dưới đây?
4
•
3 • • 5
• •
2 • 8 6
• •
1 7
H
24 /51
Đồ thị con cảm sinh
Ví dụ
Với A = {2, 4, 5, 6, 8}, hãy tìm đồ thị cảm sinh bởi
A dưới đây?
4 4
• •
3 • • 5 • 5
• • • •
2 • 8 6
2 • 8 6
• •
1 7
H H[A]
24 /51
Clique
Định nghĩa
Cho G là một đồ thị. Một tập con của tập các đỉnh
S ⊆ V (G ) được gọi là một clique nếu bất cứ hai
đỉnh nào trong S đều là kề nhau.
25 /51
Clique
Ví dụ
Tìm số clique của đồ thị sau:
4
•
3 • • 5
• •
2 • 8 6
• •
1 7
26 /51
Tập độc lập, số độc lập
Định nghĩa
Cho đồ thị G . Một tập con của các đỉnh S ⊆ V (G )
được gọi là tập độc lập nếu không có hai đỉnh nào
trong S là lân cận của nhau.
Số độc lập của G là kích thước của tập độc lập lớn
nhất; nó được ký hiệu là α(G ).
27 /51
Tập độc lập, số độc lập
Ví dụ
Tìm các tập độc lập và số độc lập của đồ thị sau:
4
•
3 • • 5
• •
2 • 8 6
• •
1 7
28 /51
Phần bù
Định nghĩa
Cho đồ thị G . Phần bù của đồ thị G là đồ thị được
ký hiệu G xác định bởi các điều kiện sau:
(i) V (G ) = V (G ), và
29 /51
Phần bù
Ví dụ
Tìm phần bù của đồ thị sau:
4
•
3 • • 5
•
2 • 6
• •
1 7
30 /51
Phần bù
Ví dụ
Tìm phần bù của đồ thị sau:
4 4
• •
3 • • 5
3 • • 5
• •
2 • 6
2 • 6
• • • •
1 7 1 7
H H̄
30 /51
Phần bù
Hệ quả (1)
Cho đồ thị G . Một tập con của V (G ) là một clique
của G nếu và chỉ nếu nó là một tập độc lập của G .
Hơn nữa, ω(G ) = α(G ), ω(G ) = α(G )
31 /51
Phần bù
Hệ quả (1)
Cho đồ thị G . Một tập con của V (G ) là một clique
của G nếu và chỉ nếu nó là một tập độc lập của G .
Hơn nữa, ω(G ) = α(G ), ω(G ) = α(G )
Hệ quả (2)
Cho đồ thị G có ít nhất 6 đỉnh. Khi đó hoặc
ω(G ) ≥ 3 hoặc ω(G ) ≥ 3.
31 /51
Liên thông
Định nghĩa
Cho G = (V , E ) là một đồ thị. Một hành trình
trong G là danh sách các đỉnh mà hai đỉnh liên tiếp
trong dãy là kề nhau, nghĩa là ta viết hành trình
W = (v0 , v1 , . . . , vl ) với v0 ∼ v1 ∼ . . . ∼ vl . Độ dài
của hành trình là số cạnh trong đó (kể cả lặp).
32 /51
Liên thông
Định nghĩa
Cho G = (V , E ) là một đồ thị. Một hành trình
trong G là danh sách các đỉnh mà hai đỉnh liên tiếp
trong dãy là kề nhau, nghĩa là ta viết hành trình
W = (v0 , v1 , . . . , vl ) với v0 ∼ v1 ∼ . . . ∼ vl . Độ dài
của hành trình là số cạnh trong đó (kể cả lặp).
Ví dụ
4
• Hành trình:
• • 5
3
• 1∼2∼3∼4∼5∼6∼7
2 • 6
1∼2∼5∼4∼7∼6
• • 2∼3∼1∼4∼5∼2
1 7 32 /51
Nối hai hành trình, đường và đồ thị liên thông
Định nghĩa
Gọi G = (V , E ) là một đồ thị.
Giả sử W1 và W2 là các hành trình:
W1 = v0 ∼ v1 ∼ . . . ∼ vl
W2 = w0 ∼ w1 ∼ . . . ∼ wk
và giả sử vl = w0 . Việc nối các đồ thị, được ký
hiệu W1 + W2 , là hành trình
v0 ∼ v1 ∼ . . . ∼ (vl = w0 ) ∼ w1 ∼ . . . ∼ wk
33 /51
Nối hai hành trình, đường và đồ thị liên thông
Định nghĩa
Gọi G = (V , E ) là một đồ thị.
Giả sử W1 và W2 là các hành trình:
W1 = v0 ∼ v1 ∼ . . . ∼ vl
W2 = w0 ∼ w1 ∼ . . . ∼ wk
và giả sử vl = w0 . Việc nối các đồ thị, được ký
hiệu W1 + W2 , là hành trình
v0 ∼ v1 ∼ . . . ∼ (vl = w0 ) ∼ w1 ∼ . . . ∼ wk
Định nghĩa
Gọi G = (V , E ) là một đồ thị.
Một đường là một đồ thị có tập các đỉnh
V = {v1 , v2 , . . . , vn } và tập các cạnh là
E = {vi vi+1 : 1 ≤ i < n}. Khi đó ta có thể nói
gọn là đường (v1 , vn+1 )
34 /51
Nối hai hành trình, đường và đồ thị liên thông
Định nghĩa
Gọi G = (V , E ) là một đồ thị.
Một đường là một đồ thị có tập các đỉnh
V = {v1 , v2 , . . . , vn } và tập các cạnh là
E = {vi vi+1 : 1 ≤ i < n}. Khi đó ta có thể nói
gọn là đường (v1 , vn+1 )
Ta nói u được nối với v nếu có đường (u, v )
trong G nghĩa là đường đó có đỉnh đầu u và
đỉnh cuối là v . Chú ý có thể có nhiều hơn một
đường như vậy.
34 /51
Nối hai hành trình, đường và đồ thị liên thông
Định nghĩa
Gọi G = (V , E ) là một đồ thị.
Một đường là một đồ thị có tập các đỉnh
V = {v1 , v2 , . . . , vn } và tập các cạnh là
E = {vi vi+1 : 1 ≤ i < n}. Khi đó ta có thể nói
gọn là đường (v1 , vn+1 )
Ta nói u được nối với v nếu có đường (u, v )
trong G nghĩa là đường đó có đỉnh đầu u và
đỉnh cuối là v . Chú ý có thể có nhiều hơn một
đường như vậy.
Nếu có một hành trình (x, y ) trong G , khi đó
sẽ có một đường (x, y ) trong G .
34 /51
Hành trình và đường của đồ thị
Ví dụ
Tìm một hành trình và đường đi từ 1 đến 5 của đồ
thị:
4
•
3 • • 5
•
2 • 6
• •
1 7
35 /51
Thành phần liên thông của đồ thị
Định lý
Cho đồ thị G , ta định nghĩa quan hệ "liên thông
với" giữa các đỉnh xác định như sau:
36 /51
Thành phần của đồ thị
Định nghĩa
Quan hệ tương đương "liên thông với" trên
V (G ) phân hoạch đồ thị G thành các lớp gọi
là các thành phần liên thông của đồ thị G .
37 /51
Thành phần của đồ thị
Định nghĩa
Quan hệ tương đương "liên thông với" trên
V (G ) phân hoạch đồ thị G thành các lớp gọi
là các thành phần liên thông của đồ thị G .
Một đồ thị gọi là liên thông nếu bất cứ hai
đỉnh đều liên thông với nhau, nghĩa là,
∀x, y ∈ V (G ), tồn tại đường (x, y ).
37 /51
Thành phần liên thông của đồ thị
Ví dụ
Tìm các thành phần liên thông của đồ thị:
4
•
3 • • 5
•
2 • 6
• •
1 7
38 /51
Chu trình
Định nghĩa
Một chu trình là một hành trình gồm ít nhất 3 đỉnh
trong đó đỉnh đầu và đỉnh cuối trùng nhau, nhưng
không có đỉnh nào khác lặp lại.
Một chu trình trên tập n đỉnh được ký hiệu là Cn .
4
•
3 • • 5
•
2 • 6
• •
1 7
H
39 /51
Đồ thị cây
Định nghĩa
Cho đồ thị G , ta nói G là một cây nếu G không có
một chu trình nào và liên thông.
4 8 4
3 5 3 5
6 6
2 2
1 7 1 7
40 /51
Tính chất của đồ thị cây
Định lý
Cho đồ thị cây T , khi đó bất cứ hai đỉnh a và b
trong V (T ), tồn tại và duy nhất một đường
(a, b).
Ngược lại, nếu đồ thị G có tính chất là bất cứ
cặp đỉnh (u, v ), tồn tại duy nhất một đường
(u, v ), thì G phải là cây.
4 8
3 5
2
9
1 7
Cây 41 /51
Đồ thị Euler
Định nghĩa
Cho đồ thị G . Một hành trình chứa tất cả các cạnh
trong G mà mỗi cạnh chỉ xuất hiện duy nhất một
lần được gọi là hành trình Euler.
42 /51
Tính chất của đồ thị Euler
2
7
5
4
1
9
3
43 /51
Đồ thị Euler
Định lý
Nếu G có một chu trình Euler (hay G là đồ thị
Euler) thì tất cả các đỉnh của G có bậc chẵn.
44 /51
Đồ thị Euler
Định lý
Nếu G có một chu trình Euler (hay G là đồ thị
Euler) thì tất cả các đỉnh của G có bậc chẵn.
Nếu G là đồ thị Euler và liên thông thì G có
chu trình Euler mà có điểm đầu và cuối tại bất
cứ điểm nào của đồ thị.
44 /51
Đồ thị Euler
Định lý
Nếu G có một chu trình Euler (hay G là đồ thị
Euler) thì tất cả các đỉnh của G có bậc chẵn.
Nếu G là đồ thị Euler và liên thông thì G có
chu trình Euler mà có điểm đầu và cuối tại bất
cứ điểm nào của đồ thị.
Nếu G là đồ thị liên thông mà tất cả các đỉnh
có bậc chẵn. Với đỉnh v ∈ V (G ) bất kỳ, tồn tại
một chu trình Euler xuất phát và kết thúc ở v .
44 /51
Bài toán tô màu đồ thị
Định nghĩa
Cho G là đồ thị và một số nguyên dương k. Một
hàm k-màu f trên G là hàm thỏa mãn:
f : V (G ) −→ {1, 2, . . . , k}
ở đó:
∀xy ∈ E (G ), f (x) 6= f (y )
Nếu tồn tại hàm k-màu f trên G thì ta nói đồ thị G
có thể tô bởi k màu.
45 /51
Bài toán tô màu đồ thị
Ví dụ
Hai cách tô đồ thị G bằng 3 màu
6 8 6 8
2 2
7 7
5 5
4 4
1 1
9 9
3 3
H H
46 /51
Bài toán tô màu đồ thị
Định nghĩa
Cho đồ thị G . Số nguyên dương nhỏ nhất k sao cho
G có thể tô được k màu được gọi là sắc số của G ,
ký hiệu là χ(G ).
47 /51
Bài toán tô màu đồ thị
Định nghĩa
Cho đồ thị G . Số nguyên dương nhỏ nhất k sao cho
G có thể tô được k màu được gọi là sắc số của G ,
ký hiệu là χ(G ).
Ví dụ
Tìm sắc số của các đồ thị
6 8 6 8 6 8
2 2 2
7 7 7
5 5 5
4 4 4
1 1 1
9 9 9
3 3 3
H1 H2 H3
47 /51
Bài toán tô màu đồ thị
48 /51
Bài toán tô màu đồ thị
48 /51
Bài toán tô màu đồ thị
48 /51
Bài toán tô màu đồ thị
48 /51
Đồ thị phẳng
Định nghĩa
Một đồ thị phẳng là đồ thị các cạnh, đỉnh được vẽ
trong mặt phẳng ở đó các cạnh không cắt nhau.
49 /51
Đồ thị phẳng
Định nghĩa
Một đồ thị phẳng là đồ thị các cạnh, đỉnh được vẽ
trong mặt phẳng ở đó các cạnh không cắt nhau.
Định lý
Cho G là đồ thị liên thông phẳng với n đỉnh và m
cạnh. Gọi f là số các vùng khác nhau trong mặt
phẳng được chia bởi các cạnh. Khi đó
n − m + f = 2.
49 /51
Tính chất đồ thị phẳng
Định lý
Mọi đồ thị phẳng G thì χ(G ) ≤ 4.
50 /51
Tính chất đồ thị phẳng
Định lý
Mọi đồ thị phẳng G thì χ(G ) ≤ 4.
Ví dụ
Tìm sắc số của đồ thị phẳng sau:
3
2
4
5
H
50 /51
Luyện tập
51 /51