You are on page 1of 70

BÀI TẬP TOÁN RỜI RẠC

***

Full

ĐỒ THỊ

Giảng viên : Nguyễn Mậu Hân


Sinh viên thực hiện : Nguyễn Thị Diệu Hằng
Lớp : Tin K30D

* Bài 1:
1
Cho G là một đồ thị có v đỉnh và e cạnh.M và m tương ứng là bậc lớn nhất
và nhỏ nhất của các đỉnh của G.Chứng minh rằng:
m ≤ 2.e/v ≤ M

Lời giải:
Theo đề ra ta có:
M: bậc lớn nhất của đỉnh của G.
m: bậc nhỏ nhất của đỉnh của G.
Như vậy:
m ≤ deg(vi) ≤ M (với deg(vi) : bậc của đỉnh vi)
v.m ≤ ∑deg(vi) ≤ v.M
v.m ≤ 2.e ≤ v.M
m ≤ 2.e ≤ M
Vậy ta có điều phải chứng minh.

* Bài 2:
Chứng minh rằng nếu G là đơn đồ thị phân đôi có v đỉnh và e cạnh, khi đó
e ≤ v2/4.
Lời giải :
Ta có:
G=(V,E) là đơn đồ thị phân đôi.
V=V1 U V2, V1 ∩ V2 =ø, V1 ≠ ø, V2 ≠ ø.
Gọi n1 và n2 lần lượt là số phần tử của V1 và V2.
n1 + n2 = v
G là đồ thị phân đôi nên e đạt giá trị max khi G là đồ thị phân đôi đầy
đủ.Khi đó:
e = n1.n2
Có nghĩa là trong trường hợp tổng quát thì:
e ≤ n1.n2
Như vậy, để chứng minh e ≤ v2/4 chỉ cần chứng minh:
n1.n2≤ v2/4
Thật vậy:
n1.n2 ≤ v2/4
n1.n2 ≤ (n1+ n2)2/4
4.n1.n2 ≤ n12 + n22 + 2.n1.n2
n12 + n22 - 2.n1.n2 ≥ 0≤ v2/4
(n1- n2)2 ≥ 0 (hiển nhiên đúng)

2
Suy ra:
e ≤ n1.n2 ≤ v2/4
Vậy ta có điều phải chứng minh.

* Bài 3:
Trong một phương án mạng kiểu lưới kết nối n=m2 bộ xử lý song song, bộ
xử lý P(i,j) được kết nối với 4 bộ xử lý (P(i± 1) mod m, j), P(i, (j± 1) mod
m), sao cho các kết nối bao xung quanh các cạnh của lưới. Hãy vẽ mạng
kiểu lưới có 16 bộ xử lý theo phương án này.
Lời giải:

P(0,0) P(0,1)

P(2,0) P(2,1)

P(0,3) P(0,2)

P(2,3) P(2,2)

P(3,0) P(3,1)

P(1,0) P(1,1)

P(3,3) P(3,2)

P(1,3) P(1,2)

* Bài 4:
Hãy vẽ các đồ thị vô hướng được biểu diễn bởi ma trận liền kề sau:
3
a) b)
1 2 3 1 2 0 1
2 0 4 2 0 3 0
3 4 0 0 3 1 1
1 0 1 0

c)
0 1 3 0 4
1 2 1 3 0
3 1 1 0 1
0 3 0 0 2
4 0 1 2 3
Lời giải:

a) b) V V
V 1 2

V V V V
2 3
4 3

V
c) 1

V V
5 2

V V
4 3

*Bài 5:

4
Nêu ý nghĩa của tổng các phần tử trên một hàng (tương ứng cột) của một
ma trận liền kề đối với một đồ thị vô hướng ? Đối với đồ thị có hướng ?
Lời giải:
Cho đồ thị G=(V,E).V= {v1,v2,...,vn }
Ma trận liền kề của đồ thị G=(V,E) là ma trận:
A=( aij ) với 1≤i,j≤n
a11 a12 ... a1n
a21 a22 ... a2n
A= .........
an1 an2 ... ann

*Nếu G là đồ thị vô hướng:


aij là số cạnh nối đỉnh vi và vj
-Tổng hàng i của ma trận A:
n

∑ aij chính là bậc của đỉnh vi


j=1

-Tổng cột j của ma trận A:


n

∑aij chính là bậc của đỉnh vj


i=1

*Nếu G là đồ thị có hướng:


aij là số cung nối vi và vj mà vj là đỉnh cuối
-Tổng hàng i của ma trận A:
n

∑ aij chính là bậc ra của đỉnh vi


j=1

-Tổng cột j của ma trận A:


n

∑aij chính là bậc ra của đỉnh vj


i=1

*Bài 6:
Tìm ma trận liền kề cho các ma trận sau:
a) Kn b) Cn c) Wn d) Km,n e) Qn
Lời giải:
a) Ma trận liền kề của đồ thị đầy đủ Kn:
ai1 ai2 ... aij ... ain
5
a1j 0 1 ... 1 ... 1
a2j 1 0 ... 1 ... 1
... ... ... ... ... ... ...
aij 1 1 ... 0 ... 1
... ... ... ... ... ... ...
anj 1 1 ... 1 ... 0

Hay viết cách khác:


Ma trận liền kề của đồ thị đầy đủ Kn là:

0 nếu i = j
A = (aij), trong đó aij =
1 nếu i ≠ j

b) Ma trận liền kề của đồ thị vòng Cn:

ai1 ai2 ai3 ... aij-1 aij aij+1 ... ain-1 ain

a1j 0 1 0 ... 0 0 0 ... 0 1


a2j 1 0 1 ... 0 0 0 ... 0 0
a3j 0 1 0 ... 0 0 0 ... 0 0
... ... ... ... ... ... ... ... ... ... ...
aij 0 0 0 ... 1 0 1 ... 0 0
... ... ... ... ... ... ... ... ... ... ...
anj 1 0 0 ... 0 0 0 ... 1 0

Viết cách khác:


Ma trận liền kề của đồ thị vòng Cn là:
A = (aij), trong đó:
1 nếu j=2 hoặc j=n
- Với i=1: aij=
0 nếu j≠2và j≠n

1 nếu j=1 hoặc j=n-1


- Với i=n: aij=
0 nếu j≠1 và j≠n-1
-Với i≠1 và i≠n:

1 nếu j=i+1, j=i-1


6
aij =
0 nếu j≠i+1 và j≠i-1

c) Ma trận liền kề A của đồ thị bánh xe Wn:

ai1 ai2 ai3 ... aij-1 aij aij+1 ... ain-1 ain ain +1

a1j 0 1 0 ... 0 0 0 ... 0 1 1


a2j 1 0 1 ... 0 0 0 ... 0 0 1
... ... ... ... ... ... ... ... ... ... ... ...
aij 0 0 0 ... 1 0 1 ... 0 0 1
... ... ... ... ... ... ... ... ... ... ... ...
anj 1 0 0 ... 0 0 0 ... 1 0 1
an+1j 1 1 1 ... 1 1 1 ... 1 1 0

d) Ma trận liền kề của đồ thị phân đôi đầy đủ Km,n:

Cho G=(V,E)=Km,n, trong đó V=V1 U V2


V1={v1,v2,...,vm}
V2={v'1,v'2,...,v'n}

Ta có ma trận liền kề của Km,n như sau:


v1 v2 ... vm v'1 v'2 ... v'n

v1 0 0 ... 0 1 1 ... 1
v2 0 0 ... 0 1 1 ... 1
... ... ... ... ... ... ... ... ...
vm 0 0 ... 0 1 1 ... 1
v'1 1 1 ... 1 0 0 ... 0
v'2 1 1 ... 1 0 0 ... 0
... ... ... ... ... ... ... ... ...
v'n 1 1 ... 1 0 0 ... 0

e) Ma trận liền kề của đồ thị lập phương Qn( 2n đỉnh ứng với n xâu
nhị phân khác nhau chứa bit 0, 1)
7
00..00 00..01 00..10 00..11 ... 10..00 10..01 ... 11..11

00..00 0 1 1 0 ... 1 0 ... 0


00..01 1 0 0 1 ... 0 1 ... 0
00..10 1 0 0 1 ... 0 0 ... 0
00..11 0 1 1 0 ... 0 0 ... 0
... ...
10..00 1 0 0 0 ... 0 1 ... 0
10..01 0 0 0 0 ... 1 0 ... 0
...
11..11 0 0 0 0 ... 0 0 ... 0

*Bài 7:
Hai đơn đồ thị với ma trận liền kề sau đây có là đẳng cấu không?

0 1 0 1 0 1 1 1
1 0 0 1 1 0 0 1
0 0 0 1 1 0 0 1
1 1 1 0 1 1 1 0

Ma trận 1 Ma trận 2

Lời giải:

• Cách 1:
Dựa vào ma trận liền kề, ta có thể vẽ được 2 đồ thị tương ứng như
sau:

V' V'
V1 V2
1 2

V' V'
V4 V3
4 3
G1 G2

G1=(V,E): đồ thị ứng với ma trận 1


G2=(V',E'): đồ thị ứng với ma trận 2

8
Dễ dàng nhận thấy:
- Số cạnh của 2 đồ thị khác nhau: G1 có 4 cạnh, G2 có 5 cạnh
- Ngoài ra:
G1 có 1 đỉnh bậc 1 (V3)
2 đỉnh bậc 2 (V1,V2)
1 đỉnh bậc 3 (V4)
G2 không có đỉnh bậc 1
2 đỉnh bậc 2(V'2,V'3)
2 đỉnh bậc 3(V'1,V'4)
Vậy 2 đồ thị trên không đẳng cấu.

• Cách 2:
Tổng các phần tử trong ma trận liền kề của đơn đồ thị bằng tổng số
bậc của các đỉnh và bằng 2 lần số cạnh của đồ thị.
Từ 2 ma trận trên ta có:
- Đồ thị ứng với ma trận 1 có 8:2=4 cạnh
- Đồ thị ứng với ma trận 2 có 10:2=5 cạnh
Như vậy, 2 đơn đồ thị ứng với 2 ma trận liền kề trên không đẳng cấu.

*Bài 8:
Hai đơn đồ thị với ma trận liên thuộc sau có là đẳng cấu không?

1 0 0 0 0 0 1 0 0 1
1 0 1 0 1 0 1 1 1 0
0 0 0 1 1 1 0 0 1 0
0 1 1 1 0 1 0 1 0 1

Lời giải:
- Ma trận 1:
e1 e2 e3 e4 e5

u1 1 1 0 0 0
u2 1 0 1 0 1
u3 0 0 0 1 1 ứng với đồ thị G=(U,E)
u4 0 1 1 1 0

- Ma trận 2:
e'1 e'2 e'3 e'4 e'5

v1 0 1 0 0 1
9
v2 0 1 1 1 0 ứng với đồ thị G'=(V,E')
v3 1 0 0 1 0
v4 1 0 1 0 1

U1 e1 U2 V1 e'2 V2

e2 e3 e5 e'5 e'3 e'4

U4 U3 V4 V3
e4 e'1

G=(U,E) G'=(V,E')
Xét phép đẳng cấu f:
e1→e'2
e2→e'5
e3→e'3
e4→e'1
e5→e'4

Lúc này, ta biểu diễn lại ma trận liên thuộc của đồ thị G' theo thứ tự
các đỉnh v1, v2, v3,v4 và thứ tự các cạnh e'2, e'5, e'3, e'1, e'4 như sau:
e'2 e'5 e'3 e'1 e'4

v1 1 1 0 0 0
v2 1 0 1 0 1
v3 0 0 0 1 1
v4 0 1 1 1 0

Ma trận n ày và ma trận liên thuộc của G bằng nhau.


Vậy G và G' đẳng cấu với nhau.

* Bài 9: Các đồ thị G và G’ sau có đẳng cấu với nhau không?

10
a) u1 v1 v2

u2
v5 v6
u3

u4
v4 v3
u5 u6

b) u1 u2 u3 v1 v2

v6 v3
u4 u5 u6
v5 v4

Lời giải:
a) Xét phép đẳng cấu f:
u1→v2
u2→v3
u3→v6
u4→v5
u5→v4
u6→v1
Lúc này, ma trận liền kề của G (theo thứ tự các đỉnh u6, u1, u2, u5, u4,
u3) và ma trận liền kề của G' là bằng nhau và bằng:
0 1 1 1 1 1
1 0 1 1 0 0
1 1 0 1 0 1
1 1 1 0 1 1
1 0 0 1 0 1
1 0 1 1 1 0

Vậy G và G’ đẳng cấu với nhau.

b)Xét phép đẳng cấu f:


u1→v3
u2→v5

11
u3→v1
u4→v2
u5→v4
u6→v6
Lúc này, ma trận liền kề của G(theo thứ tứ các đỉnh v3, v4, v1, v5, v2,
v6) và na trận liền kề của G’ bằng nhau và bằng:
0 1 0 0 0 1
0 0 0 0 1 0
0 1 0 1 0 0
1 0 0 0 0 0
0 0 0 1 0 0
0 0 1 0 1 0

Vậy, hai đồ thị G và G’ đẳng cấu với nhau.


* Bài 10:
Cho V={2,3,4,5,6,7,8} và E là tập hợp các cặp phần tử (u,v) của V sao
cho u<v và u,v nguyên tố cùng nhau. Hãy vẽ đồ thị có hướng G=(V,E). Tìm
số các đường đi phân biệt độ dài 3 từ đỉnh 2 tới đỉnh 8.
Lời giải:
Các cặp phần tử (u,v) thỏa mãn yêu cầu đề bài là:
E={(2,3), (2,5), (2,7), (3,4), (3,5), (3,7), (3,8), (4,5), (4,7), (5,6), (5,7),
(5,8), (6,7), (7,8)}
Đồ thị G cần vẽ :

2 3 4

5 6 7 8

Các đường đi phân biệt độ dài 3 đi từ 2 đến 8 là:


2, 3, 7, 8
2, 3, 5, 8
2, 5, 7, 8

12
* Bài 11:
Hãy tìm số đường đi độ dài n giữa hai đỉnh liền kề (t.ư. không liền
kề) tùy ý trong K3,3 với mỗi giá trị của n sau:
a) n=2 b) n=3 c) n=4 d) n=5
Lời giải:

V V V
1 2 3

V V V
4 5 6

K3,3
* Cách 1:
Tập các đỉnh của K3,3 được chia làm 2 phần:
- Phần 1 gồm V1, V2, V3
- Phần 2 gồm V4, V5, V6
Trong đó, 2 đỉnh thuộc cùng 1 phần thì không liền kề
2 đỉnh thuộc 2 phần khác nhau thì liền kề.
Gọi d là số đường đi độ dài n giữa 2 đỉnh thuộc K3,3.
* Nếu n chẵn thì điểm đầu và điểm cuối của đường đi phải nằm
trong cùng 1 phần (chúng không liền kề).
* Nếu n lẻ thì điểm đầu và điểm cuối của đường đi phải nằm ở 2
phần khác nhau (chúng liền kề với nhau).
Mà khi xuất phát từ 1 đỉnh ta luôn có 3 cách đi(do mỗi phần gồm 3
đỉnh). Áp dụng quy tắc nhân ta có số đường đi có độ dài n giữa 2 đỉnh là:
- Nếu 2 đỉnh liền kề:
+ n chẵn: d=0
+ n lẻ : d=3n-1(do cạnh cuối cùng nối với đỉnh cuối chỉ có 1 cách)
- Nếu 2 đỉnh không liền kề:
+ n chẵn : d=3n-1(do cạnh cuối cùng nối với đỉnh cuối chỉ có 1 cách)
+ n lẻ : d=0

Áp dụng cụ thể:
13
Độ dài n=2 n=3 n=4 n=5
Đỉnh
Liền kề d=0 d=9 d=0 d=81
Không liền kề d=3 d=0 d=27 d=0

* Cách 2:
Đồ thị K3,3 có ma trận liền kề theo thứ tự các đỉnh V1, V2, V3, V4,
V5, V6 như sau:
0 0 0 1 1 1
0 0 0 1 1 1
A= 0 0 0 1 1 1
1 1 1 0 0 0
1 1 1 0 0 0
1 1 1 0 0 0

Ta có mệnh đề: Cho G là một đồ thị (vô hướng hoặc có hướng) với
ma trận liền kề A theo thứ tự các đỉnh v1, v2, ..., vn. Khi đó số các đường đi
khác nhau độ dài r từ vi tới vj trong đó r là một số nguyên dương, bằng giá trị
của phần tử dòng i cột j của ma trận Ar.
n
Ta có:
An = A.A...A.A

3n-1 3n-1 3n-1 0 0 0


3n-1 3n-1 3n-1 0 0 0
A= 3n-1 3n-1 3n-1 0 0 0 , nếu n chẵn
0 0 0 3n-1 3n-1 3n-1
0 0 0 3n-1 3n-1 3n-1
0 0 0 3n-1 3n-1 3n-1

0 0 0 3n-1 3n-1 3n-1


0 0 0 3n-1 3n-1 3n-1

14
0 0 0 3n-1 3n-1 3n-1
A= 3n-1 3n-1 3n-1 0 0 0 , nếu n lẻ
3n-1 3n-1 3n-1 0 0 0
3n-1 3n-1 3n-1 0 0 0

Như vậy, theo mệnh đề trên, áp dụng vào các trường hợp cụ thể đề
bài đã cho ta có kết quả như ở cách 1.

* Bài 12:
Một cuộc họp có ít nhất 3 đại biểu đến dự.Mỗi người quen ít nhất 2
đại biểu khác.Chứng minh rằng có thể sắp xếp một số đại biểu ngồi
xung quanh một bàn tròn để mỗi người ngồi giữa 2 người mà đại
biểu đó quen.
Lời giải:
* Ta có thể biểu diễn mối quan hệ của các đại biểu đến tham dự
cuộc họp bằng đơn đồ thị G=(V,E).
G có n đỉnh (n≥3, n là số đại biểu) và e cạnh.
Mỗi đỉnh của đồ thị ứng với 1 đại biểu, giữa 2 đỉnh ứng với 2 đại
biểu quen nhau tồn tại 1 cạnh.
Gọi Vi (i=1,2,...,n): đỉnh của đồ thị (ứng với 1 đại biểu)
Do mỗi người quen ít nhất 2 đại biểu khác nên
deg(Vi) ≥ 2
n

∑deg(Vi) ≥ 2n
i=1

Số cạnh của đồ thị: e ≥ n (1)


* Mặt khác, theo đề ra ta có: các đại biểu ngồi xung quanh 1 bàn
tròn.
Vì vậy, đồ thị biểu diễn cách sắp xếp chỗ ngồi của các đại biểu thỏa
yêu cầu là đồ thị vòng Cn.
Trong đồ thị vòng Cn có n (cạnh), n cạnh này được lấy từ e cạnh của
G(do nó biểu thị mối quan hệ giữa các đại biểu) (2)
* Tập đỉnh của G và Cn bằng nhau và bằng n. (3)
Từ (1), (2) và (3) cho thấy, Cn là đồ thị con bao hàm của G.(Cn được
tạo ra bằng cách bỏ đi một số cạnh thích hợp của G)
Vậy, dựa trên mối quan hệ giữa các đại biểu như trên ta có thể sắp
xếp các đại biểu ngồi quanh bàn tròn sao cho mỗi người ngồi giữa 2 người
mà họ quen.( Đpcm)
15
*Bài 13:
Một lớp học có ít nhất 4 sinh viên. Mỗi sinh viên thân với ít nhất 3
sinh viên khác. Chứng minh rằng có thể xếp một số chẵn sinh viên ngồi
quanh một cái bàn tròn để mỗi sinh viên ngồi giữa 2 sinh viên mà họ thân.
Lời giải:
* Mối quan hệ giữa các sinh viên trong lớp có thể biểu diễn bằng 1
đơn đồ thị G=(V,E) n đỉnh(n≥4, n: số sinh viên), e cạnh.
Hai đỉnh ứng với 2 sinh viên thân nhau liền kề với nhau.
Gọi Vi (i=1,2,...,n): đỉnh của đồ thị ứng với 1 sinh viên.
Mỗi sinh viên thân với ít nhất 3 người
deg(Vi) ≥ 3
n

∑ deg(Vi) ≥ 3n
i=1

Tổng số cạnh của G là: e ≥ 3n/2 (1)


* Mặt khác, theo đề ra ta có: cách sắp xếp chỗ ngồi của các sinh
viên có thể biểu diễn bằng đồ thị vòng Cn (do các sinh viên ngồi quanh bàn
tròn).
Cn có n cạnh (n cạnh này lấy từ e cạnh của G)
Mà e phải là số nguyên suy ra n phải chia hết cho 2 (n chẵn)
Tập đỉnh của Cn và G bằng nhau và bằng n.
Từ đó, ta thấy Cn chính là đồ thị con bao hàm của G.(Cn có thể tạo ra từ G
bằng cách bỏ đi một số cạnh thích hợp)
Hay: có thể sắp xếp một số chẵn sinh viên ngồi quanh một cái bàn
tròn sao cho mỗi người ngồi giữa 2 người mà họ thân.( Đpcm)

* Bài 14:
Trong một cuộc họp có đúng 2 đại biểu không quen nhau và mỗi đại
biểu này có một số lẻ người quen đến dự.Chứng minh rằng luôn luôn có thể
xếp một số đại biểu ngồi chen giữa 2 đại biểu nói trên, để mỗi người ngồi
giữa 2 người mà đại biểu đó quen.
Lời giải:
Mối quan hệ giữacác đại biểu đến tham dự cuộc họp có thể biểu
diễn bằng 1 đơn đồ thị G=(V,E).Trong đó mỗi đỉnh là một đại biểu, giữa 2
đỉnh ứng với 2 đại biểu quen nhau tồn tại 1 cạnh.

16
Trong cuộc họp có đúng 2 đại biểu không quen nhau và có số lẻ
người quen đến tham dự.Vậy G có đúng 2 đỉnh không liền kề và 2 đỉnh này
có bậc lẻ.
Từ mệnh đề: Nếu một đồ thị có đúng hai đỉnh bậc lẻ thì hai đỉnh
này phải liên thông, tức là có một đường đi nối chúng ta suy ra có thể tìm ra
một số đại biểu ngồi chen vào giữa 2 đại biểu này sao cho mỗi đại biểu ngồi
giữa 2 người mà đại biểu đó quen.(do 2 đỉnh ứng với 2 người này không liên
thông, 2 người không ngồi sát nhau và họ quen với n-2 người còn lại)

*Bài 15:
Một thành phố có n (n ≥ 2) nút giao thông và hai nút giao thông bất
kỳ đều có số đầu mối đường ngầm tới một trong các nút giao thông này đều
không nhỏ hơn n. Chứng minh rằng từ một nút giao thông tuỳ ý ta có thể đi
đến một nút giao thông bất kỳ khác bằng đường ngầm.
Lời giải:
- Ta có thể xem hệ thống đường ngầm của thành phố là một đơn đồ thị
có các đỉnh là các nút giao thông.
Số đỉnh của đồ thị chính là số nút giao thông: n (n≥2)
Cạnh của đồ thị là đường ngầm nối 2 nút giao thông.
Theo đề ra ta có:
Hai nút giao thông bất kì đều có số đầu mối đường ngầm tới
một trong các nút giao thông đều không nhỏ hơn n.
- Ta có mệnh đề:
Mọi đơn đồ thị n đỉnh (n≥2) có tổng bậc của 2 đỉnh tùy ý không
nhỏ hơn n đều là đồ thị liên thông.
Vậy, theo định lí trên, hệ thống đường ngầm của thành phố là đồ thị
liên thông.
Suy ra, từ một nút giao thông tuỳ ý ta có thể đi đến một nút giao thông
bất kỳ khác bằng đường ngầm.(Đpcm).

*Bài 16:
Có bao nhiêu đơn đồ thị đẳng cấu với n đỉnh khi:
a) n=2 b) n=3 c) n=4
Lời giải:
a) Với n=2, có 2 đơn đồ thị không đẳng cấu như sau:

17
b) Với n=3, có 4 đơn đồ thị không đẳng cấu:

c) Với n=4 có 11 đơn đồ thị không đẳng cấu:

BÀI TẬP TOÁN RỜI RẠC


***

18
CHƯƠNG 3:

ĐỒ THỊ EULER
VÀ ĐỒ THỊ
HAMILTON

Giảng viên : Nguyễn Mậu Hân


Sinh viên thực hiện : Nguyễn Thị Diệu Hằng
Lớp : Tin K30D

*Bài 1:
Với giá trị nào của n thì các đồ thị sau có chu trình Euler?
19
a) Kn b) Cn c) Wn d) Qn
Lời giải:
Kn, Cn, Wn, Qn đều là đồ thị liên thông.
Đồ thị liên thông chứa chu trình Euler là đồ thị Euler. Ta có thể hiểu
bài toán là tìm giá trị của n để các đồ thị trên là đồ thị Euler.
Ta có đị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.
a) Kn
Mỗi đỉnh của Kn đều có bậc là n-1. Do đó, để Kn là đồ thị Euler thì n-1
phải là số chẵn.
Hay n là số lẻ: n=2k+1 (kЄZ*)
b) Cn (n≥3)
Mỗi đỉnh của Cn đều có bậc 2(chẵn). Vậy, Cn luôn là đồ thị Euler.
c) Wn
Wn có n+1 đỉnh.Trong đó, có 1 đỉnh bậc n và n đỉnh bậc 3.Như vậy,
Wn không thể là đồ thị Euler.
d) Qn
Trong Qn có 2n đỉnh, mỗi đỉnh có bậc là n. Vậy, để Qn là đồ thị Euler
thì n phải chẵn.

*Bài 2:
Với giá trị nào của m, n thì các đồ thị phân đôi đầy đủ Km,n có:
a) Chu trình Euler b) Đường đi Euler
Lời giải:
a) Để đồ thị phân đôi đầy đủ Km,n có chu trình Euler thì các đỉnh của
Km,n phải có bậc chẵn.
Mà các đỉnh của Km,n có bậc m hoặc n.
Vậy muốn Km,n có chu trình Euler thì m, n phải là số chẵn.
b) Để đồ thị phân đôi đầy đủ có đường đi Euler thì trong Km,n phải
có đúng 2 đỉnh bậc lẻ.Với n=m=1 thì đồ thị phân đôi không phải là đồ thị có
đường đi Euler.
Hay một trong hai giá trị m hoặc n phải bằng 2 và giá trị còn lại phải
là số lẻ.

* Bài 3:

20
Với giá trị nào của m và n thì đồ thị phân đôi đầy đủ K m,n có chu trình
Hamilton.
Lời giải:
•Cách 1: ( theo định lý Dirac)
Định lý Dirac phát biểu như sau: 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 n/2 thì G là đồ thị
Hamilton.
Suy ra: để Km,n có chu trình Hamilton thì mọi đỉnh của Km,n phải có
bậc không nhỏ hơn n/2:
deg(Vi) ≥ (n+m)/2 (1)
Mà trong Km,n, deg(Vi)={m,n}
Từ (1) ta có:
n ≥ (m+n)/2 (n-m)/2 ≥ 0
m ≥ (m+n)/2 (m-n)/2 ≥ 0

(n-m)/2 ≥ 0
(n-m)/2 ≤ 0

n-m= 0
n=m
Vậy với n=m thì Km,n có chu trình Hamilton.

•Cách 2: (theo định lý Ore)


Định lý Ore được phát biểu như sau: Nếu G là một đơn đồ thị có n
đỉnh và bất kì 2 đỉnh không kề nhau cũng có tổng số bậc không nhỏ hơn n
thì G là đồ thị Hamilton.
Hai đỉnh không liền kề của Km,n nằm ở cùng một phần, bất kì 2 đỉnh
không liền kề nào đều có tổng bậc là n+m.
Để Km,n có chu trình Hamilton, theo định lý Ore thì:
n+n ≥ n+m n-m ≥ 0 n=m
m+m ≥ n+m m-n ≥ 0

Vậy với n=m thì Km,n có chu trình Hamilton.

•Cách 3:
Ta có định lý: Nếu G là dồ thị phân đôi với 2 tập đỉnh là V1 và V2 có
số đỉnh cùng bằng n và bậc của mỗi đỉnh lớn hơn n/2 thì G là đồ thị
Hamilton.
Vậy với n=m thì Km,n có chu trình Hamilton.
*Bài 4:
21
Chứng minh rằng đồ thị lập phương Qn là một đồ thị Hamilton.Vẽ
cây liệt kê tất cả các chu trình Hamilton của đồ thị lập phương Q3.
Lời giải:
Theo định lý Dirac: 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 n/2 thì G là đồ thị Hamilton.
Mà trong đồ thị lập phương Qn, mọi đỉnh đều có bậc n.
Vậy, đồ thị lập phương Qn là đồ thị Hamilton (Đpcm)

* Vẽ cây chu trình Hamilton của đồ thị lập phương Q3:


000

001 010 100

011 101 110 011 110 101

111 010 111 100 111 100 001 100 111 010 111 001

101 110 110 110 011 101 101 110 101 011 110 011

100 111 010 111 001 111 111 111 001 111 010 111

110 101 110 011 101 011 110 101 011 101 011 110

010 100 100 010 100 001 100 001 010 001 001 100

000 000 000 000 000 000 000 000 000 000 000 000

* Bài 5:
Trong một cuộc họp có 15 người mỗi ngày ngồi với nhau chung một
bàn tròn một lần. Hỏi có bao nhiêu cách sắp xếp sao cho mỗi lần ngồi họp,
mỗi người có 2 người ngồi bên cạnh là bạn mới, và sắp xếp như thế nào?
Lời giải:

22
Xét đơn đồ thị gồm n=15 đỉnh, mỗi đỉnh ứng với một đại biểu tham
gia cuộc họp, hai đỉnh kề nhau khi hai đại biểu muốn làm quen với nhau.Vậy
ta có đơn đồ thị đầy đủ K15.
Đây là đồ thị Hamilton, mỗi chu trình Hamilton chính là một cách sắp
xếp chỗ ngồi cho các đại biểu thỏa mãn yêu cầu đề bài.
Theo định lý, trong Kn với n lẻ, n≥3 có đúng (n-1)/2 chu trình
Hamilton phân biệt.Vậy có (15-1)/2 = 7 cách sắp xếp chỗ ngồi như trên.
Mỗi cách sắp xếp là một chu trình Hamilton của K15.

* Bài 6:
Hiệu trưởng mời 2n(n≥2) sinh viên giỏi đến dự tiệc.Mỗi sinh viên giỏi
quen với ít nhất n sinh viên giỏi khác đến dự tiệc.Chứng minh rằng luôn
luôn có thể xếp tất cả các sinh viên giỏi ngồi xung quanh một bàn tròn để
mỗi người ngồi giữa hai người mà sinh viên đó quen.
Lời giải:
Cho đồ thị G=(V,E), mỗi đỉnh của G là một sinh viên, giữa 2 sinh viên
quen nhau tồn tại một cạnh.G là đơn đồ thị có 2n đỉnh.
Do mỗi sinh viên đến dự tiệc quen với ít nhất n sinh viên khác nên bậc
của mọi đỉnh của đồ thị G deg(Vi) ≥ n (2n/2)
Theo định lý Dirac thì G là đồ thị Hamilton.Suy ra, tồn tại chu trình
Hamilton trong G.Mỗi chu trình Hamilton là một cách sắp xếp chỗ ngồi cho
các sinh viên xung quanh bàn tròn sao cho mỗi người ngồi giữa 2 người họ
quen.Vậy ta có điều phải chứng minh.

* Bài 7:
Đồ thị trong hình sau gọi là đồ thị Peterson
a
a) Tìm một đường đi Hamilton trong G
b) Chứng minh P\{v}, với v là đỉnh bất kì
e g b
của P, là một đồ thị Hamilton.
f h

k i

d c

Lời giải:
a) Một đường đi Hamilton trong G:
23
a→b→c→d→e→f→h→k→g→i
b) Chứng minh P\{v} là một đồ thị Hamilton(với v là một đỉnh bất
kì của P):
Rõ ràng trong P, các đỉnh được chia làm 2 phần
- Phần 1: gồm a, b, c, d, e
- Phần 2: gồm f, g, h, i, k
Trong mỗi phần, các đỉnh có vai trò như nhau.
Xét 2 trường hợp:
* Trường hợp 1: v là đỉnh thuộc phần 1
Do vai trò các đỉnh như nhau, giả sử ta bỏ đỉnh a.Lúc này, trong P\
{a} tồn tại chu trình Hamilton: i→ f→ e →d →c →b →h→ k→ g→ i.
Suy ra, P\{a} là đồ thị Hamilton.

* Trường hợp 2: v là đỉnh thuộc phần 2


Cũng như trường hợp trên, vai trò các đỉnh như nhau, giả sử ta bỏ
đỉnh f. Trong P\{f} tồn tại chu trình Hamilton:
h→k→ d→ e →a →g →i→ c →b →h
Suy ra, P\{f} là đồ thị Hamilton
Như vậy, trường hợp tổng quát, với v là đỉnh bất kỳ ta luôn có P\
{v} là đồ thị Hamilton(Đpcm)

* Bài 8:
Giải bài toán người phát thư Trung Hoa với đồ thị cho trong hình
sau:

Lời giải:

Trước tiên, ta gán nhãn cho đồ thị:


24
Các đỉnh bậc lẻ:V0(G)={B, E,I, L}
A B

J C

I K L D

H G F E
Tập các phân hoạch cặp:
P={P1, P2, P3}
Trong đó:
P1={B,E),(I,L)}→d(P1) = d(B,E) + d(I,L) = 2 + 2 = 4
P2={(B,I),(E,L)}→d(P2) = d(B,I) + d(E,L) = 3 + 1 = 4
P3={(B,L),(E,I)}→d(P3) = d(B,L) +d (E,I) = 2 + 3 = 5
m(G) = min{d(P1), d(P2), d(P3)} = 4
Vậy, GT có được bằng cách thêm vào đồ thị G 4 cạnh (A,B), (A,J),
(I,J), (E,L).GT là đồ thị Euler. Đường đi ngắn nhất là chu trình Euler trong
GT, đó là:
H, I, G, K, F, L, K, J, I, J, A, J, C, B, A, D, E, L, D, E, L, E, F, G, H

*Bài 9:
Chứng minh rằng đồ thị G cho trong hình sau có đường đi Hamilton
(từ s đến r) nhưng không có chu trình Hamilton.

d
s
c r
e
g
b
f
h
a

Lời giải:
Trong G tồn tại đường đi Hamilton (từ s đến r).
25
Thật vậy,trong G tồn tại đường đi:s→a→b→c→e→f→g→d→h→r là
đường đi Hamilton.
Ta giả sử trong G tồn tại chu trình Hamilton.Theo hình vẽ ta thấy, để
đi tới s thì phải đi qua a hoặc c.Mặt khác, để đi tới b cũng phải đi qua a hoặc
c.Như vậy, trong chu trình này, đỉnh a hoặc c sẽ xuất hiện 2 lần.Vô lí, vì đây
là chu trình Hamilton, mỗi đỉnh chỉ xuất hiện 1 lần(ngoại trừ đỉnh đầu và
đỉnh cuối trùng nhau).
Vậy, không tồn tại chu trình Hamilton trong đồ thị G.

* Bài 10:
Cho ví dụ về:
a) Đồ thị có một chu trình vừa là chu trình Euler, vừa là chu trình
Hamilton.
b) Đồ thị có một chu trình Euler và một chu trình Hamilton, nhưng hai
chu trình này không trùng nhau.
c) Đồ thị có 6 đỉnh, là đồ thị Hamilton nhưng không phải là đồ thị
Euler.
d) Đồ thị có 6 đỉnh, là đồ thị Euler nhưng không phải là đồ thị
Hamilton.
Lời giải:
a) Đồ thị có một chu trình vừa là chu trình Euler, vừa là chu trình
Hamilton:

b) Đồ thị có một chu trình Euler, một chu trình Hamilton nhưng 2 chu
trình này không trùng nhau:
b1)
A B

G C

E D

26
Trong đồ thị trên có chứa chu trình Hamilton và chu trình Euler.
* Chu trình Hamilton:
A, B, C, D, E, G, A
* Chu trình Euler:
A, B, C, D, G, B, D, E, G, A
Hai chu trình này không trùng nhau.

b2)
A

E B

D C

Đồ thị trên có:


* Chu trình Hamilton:
A, B, C, D, E, A
* Chu trình Euler:
A, B, C, D, E, B, D, A, C, E, A

c) Đồ thị có 6 đỉnh, là đồ thị Hamilton mà không phải là đồ thị Euler:

A B

G C

E D

Đồ thị trên là đồ thị Hamilton, do có chứa chu trình Hamilton:


A, B, C, D, E, G
Nhưng đồ thị trên không phải là đồ thị Euler, do mỗi đỉnh của đồ thị
đều có bậc lẻ( bậc 3)

27
d) Đồ thị có 6 đỉnh, là đồ thị Euler nhưng không phải là đồ thị
Hamilton:

A B

G C

E D

Đồ thị trên chứa chu trình Euler: A, B, C, D, E, B, G, A nên nó là đồ


thị Euler.
Ta thấy rằng, E và G không liền kề.Muốn đi từ E qua G hay ngược lại
thì cần thông qua B.Vậy, trong bất kì chu trình nào chứa tất cả các đỉnh thì
có đỉnh B xuất hiện hơn 1 lần.Vậy không tồn tại chu trình Hamilton, hay đồ
thị trên không phải là đồ thị Hamilton.

---&0&---

28
BÀI TẬP TOÁN RỜI RẠC
---&0&--

CHƯƠNG 4:

MỘT SỐ BÀI
TOÁN TỐI ƯU
TRÊN ĐỒ THỊ

Giảng viên : Nguyễn Mậu Hân


Sinh viên thực hiện : Nguyễn Thị Diệu Hằng
Lớp : Tin K30D

29
* Bài 1:
Dùng thuật toán Dijkstra tìm đường đi ngắn nhất từ đỉnh a đến các
đỉnh khác trong đồ thị sau:

4 2
c
2 7
b 3 d
12
k e
4 5 3
1 4

2 5
h 7
11
a g

Lời giải:

L(a) L(b) L(c) L(d) L(e) L(g) L(h) L(k)


0 ∞ ∞ ∞ ∞ ∞ ∞ ∞ a

- 4 ∞ ∞ ∞ 11 2 ∞ b

- 4 ∞ 7 ∞ 9 - 3 c

- 4 5 7 15 9 - - d

- - 5 7 15 9 - - e

- - - 7 15 8 - - g

- - - - 14 8 - - h

- - - - 13 - - - k

30
* Bài 2:
Dùng thuật toán Dijkstra tìm đường đi ngắn nhất từ đỉnh a đến các
đỉnh trong đồ thị sau:

4
b f
5
1 10 1 2
4
10
c g 2
1
a 4 5
6 k
8
3
d h
5
3 6
2 3
8
e i
Lời giải:
L(a) L(b) L(c) L(d) L(e) L(f) L(g) L(h) L(i) L(k)
0 ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ a
- 1 10 6 3 ∞ ∞ ∞ ∞ ∞ b
- - 10 6 3 5 ∞ ∞ ∞ ∞ c
- - 10 5 - 5 ∞ 9 11 ∞ d
- - 9 - - 5 ∞ 8 11 ∞ e
- - 6 - - - 7 7 11 10 f
- - 6 - - - - 7 11 9 g
- - 6 - - - - - 11 9 h
- - - - - - - - 10 9 i
10 - k

* Bài 3:
31
Cho đồ thị có trọng số như hình dưới đây.Hãy tìm đường đi ngắn nhất
từ đỉnh A đến đỉnh N.

7 3 8 3
A B C D E
4 3 2 2 5 2 2 5

1 4 2 2 3
F G H I
2 3 4 5 3 4 3 2

J K L M N
2 9 5 7

Lời giải:

L(A) L(B L(C) L(D) L(E L(F) L(G) L(H) L(I) L(J) L(K) L(L L(M) L(N)
) ) )
0 ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ A

- 7 ∞ ∞ ∞ 4 ∞ ∞ ∞ 1 ∞ ∞ ∞ ∞ B

- 7 ∞ ∞ ∞ 3 ∞ ∞ ∞ - 3 ∞ ∞ ∞ C

- 6 ∞ ∞ ∞ - ∞ ∞ ∞ - 3 ∞ ∞ ∞ D

- 6 ∞ ∞ ∞ - 7 ∞ ∞ - - 12 ∞ ∞ E

- - 9 ∞ ∞ - 7 ∞ ∞ - - 12 ∞ ∞ F

- - 9 ∞ ∞ - - ∞ ∞ - - 12 ∞ ∞ G

- - - 17 ∞ - - 15 ∞ - - 11 ∞ ∞ H

- - - 17 ∞ - - 14 ∞ - - - 16 ∞ I

- - - 16 ∞ - - - ∞ - - - 16 ∞ J

- - - - 19 - - - 18 - - - 16 K

- - - - 19 - - - 18 - - - - 23 L

- - - - 19 - - - - - - - - 20 M

- - - - - - - - - - - - - 20 N

* Bài 4:

32
Tìm đường đi ngắn nhất từ B đến các đỉnh khác của đồ thị có ma trận
trọng số là:

A B C D E F G
A 3 6
B 3 2 4
C 6 2 1 4 2
D 4 1 2 4
E 4 2 2 1
F 2 2 4
G 4 1 4

Lời giải:
Từ ma trận trọng số trên, ta có thể vẽ ra đồ thị tương ứng như sau:

A
6 4
C E
a 1
2
3 1
2 G
2
4
4
B D F
4

Ta có thể giải bài toán theo 2 cách:


• Cách 1: (Dùng thuật toán Dijkstra)

L(A) L(B) L(C) L(D) L(E) L(F) L(G)


∞ 0 ∞ ∞ ∞ ∞ ∞ A
3 - 2 4 ∞ ∞ ∞ B
3 - - 3 6 4 ∞ C
- - - 3 6 4 ∞ D
- - - - 5 4 6 E
- - - - 5 - 6 F
- - - - - - 6 G

• Cách 2: (Dùng thuật toán Floyd)


Ta có ma trận trọng số của đồ thị:

33
A B C D E F G
A 3 6
B 3 2 4
C 6 2 1 4 2
D 4 1 2 4
E 4 2 2 1
F 2 2 4
G 4 1 4
W=W0
Áp dụng thuật toán Floyd ta có:
A B C D E F G
A 3 6
B 3 6 2 4
C 6 2 12 1 4 2
D 4 1 2 4
E 4 2 2 1
F 2 2 4
G 4 1 4
W1

A B C D E F G
A 6 3 5 7
B 3 6 2 4
C 5 2 4 1 4 2
D 7 4 1 8 2 4
E 4 2 2 1
F 2 2 4
G 4 1 4
W2
A B C D E F G
A 6 3 5 6 9 7
B 3 4 2 3 6 4
C 5 2 4 1 4 2
D 6 3 1 2 2 3 4
E 9 6 4 2 8 2 1
F 7 4 2 3 2 4 4
G 4 1 4
W3

A B C D E F G
34
A 6 3 5 6 8 7 10
B 3 4 2 3 5 4 7
C 5 2 2 1 3 2 5
D 6 3 1 2 2 3 4
E 8 5 3 2 4 2 1
F 7 4 2 3 2 4 4
G 10 7 7 4 1 4 8
W4

A B C D E F G
A 6 3 5 6 8 7 9
B 3 4 2 3 5 4 6
C 5 2 2 1 3 2 4
D 6 3 1 2 2 3 3
E 8 5 3 2 4 2 1
F 7 4 2 3 2 4 3
G 9 6 4 3 1 3 2
W5=W6

A B C D E F G
A 6 3 5 6 8 7 9
B 3 4 2 3 5 4 6
C 5 2 2 1 3 2 4
D 6 3 1 2 2 3 3
E 8 5 3 2 2 2 1
F 7 4 2 3 2 4 3
G 9 6 4 3 1 3 2
*
W7=W

* Bài 5:
Tìm W* bằng cách áp dụng thuật toán Floyd vào đồ thị sau:

35
8
B C
3 6
2 5
2
13
A 0 F D

3 4
1
E
8

Lời giải:
Ta có ma trận trọng số của đồ thị trên là: (những ô trống là ∞)

A B C D E F
A 3 1 20
B 8 2
C 6 8
D
E 4 3
F 5 13
W
Áp dụng thuật toán Floyd ta có:

A B C D E F
A 3 1 20
B 8 2
C 6 8
D
E 4 3
F 5 13
W0=W1=W

36
A B C D E F
A 3 11 1 5
B 8 2
C 6 8
D
E 4 3
F 5 13
W2

A B C D E F
A 3 11 17 1 5
B 8 14 16 2
C 6 8
D
E 4 3
F 5 11 13
W3

A B C D E F
A 3 11 5 1 4
B 8 14 16 2
C 6 8 11
D
E 4 3
F 5 11 13 14
W4=W5

A B C D E F
A 3 9 5 1 4
B 7 13 15 2
C 16 6 8 11
D
E 8 4 16 3
F 5 11 13 14
W6=W*

* Bài 6:

37
Giải bài toán mạng vận tải sau bằng thuật toán Ford-Fulkerson với
luồng vận tải khởi đầu bằng 0:

6
V V
1 4 5 4
8 2
2 2
V V 4 V V
0 3 4 7
3
4 8
4
V V
2 6 6

φ
( Khả năng thông qua của các cung là các số màu xanh)
Lời giải:
Luồng φ có đường đi (V0, V1), (V1, V5), (V5, V7) gồm các cung chưa
bão hòa. Nâng luồng φ lên 4 đơn vị để có luồng φ1:

+0 +1
4 6
V V
4
4 1 4 5 4
8 2
0 +5
2 2
V V 4 V V
0 3 4 7
3
4 8
4
V V
2 6 6

φ1

Xét xích α=(V0, V1, V4, V2, V6, V7). Nâng luồng φ1 lên 2 đơn vị ta có
được luồng φ2:

38
+0
4 6
V V
4
6 1 2 4 5 4
8 2
0 +1
2 2
V V 4 V V
0 3 4 7
3
+4 4 2 +2 8 2
4
V V
2 2 6 6

φ2

+1 +4
+0 0+2 V 0+2 V
0+2 +2
4 2
V V
4+2 1 6
0 0+2
+6
V
Xích α V
0
7
2
Xét xích β=(V0, V1, V5, V3, V4, V7). Nâng luồng φ lên 2 đơn vị ta có
luồng φ3:
+0
6 6
V V
4
8 1 2 4 5 4
8 2 2
0 +1
2 2 2
V V 4 2 V V
0 3 4 7
3
+4 4 2 +2 8
4 2
V V
2 6 2 6

φ3

39
+5
+1
0+2 V 0+2 +3
V
+0 4+2 3 V
5
V 4
0+2
1
+4
0 6+2 4
V V
0
Xích β 7

Xét xích γ=(V0, V3, V6, V7). Nâng luồng φ3 lên 2 đơn vị ta có luồng
φ4 :
+0
6 6
V V
4
8 1 2 4 5 4
8 2 2
0 +1
2 2 2 2
V V 4 2 V V
0 3 4 7
2 3
+4 4 2 +2 8
4 4
V V
2 6 2 6

φ4

0 +0 +3 +4

V 0+2 V 0+2 V 2+2 V


0 3 6 7

Xích γ
Xét xích θ=(V0, V2, V6, V7). Nâng luồng φ4 lên 4 đơn vị ta có luồng φ5

40
+0
6 6
V V
4
8 1 2 4 5 4
8 2 2
0 +1
2 2 2 2
V V 4 2 V V
0 3 4 7
2 3
+4 4 2 +2 8
4 8
4 V V
2 6 6 6

φ5
Tiếp theo ta chỉ có thể đánh dấu được V0 nên quá trình nâng luồng kết
thúc và ta được giá trị của luồng cực đại là:
φ5=8+4+2=14

* Bài 7:
Giải bài toán mạng vận tải sau bằng thuật toán Ford-Fulkerson với
luồng vận tải khởi đầu được cho kèm theo:
6 6
V V
10
8 1 8 15 2 6
10 2
0
20 16
V 8 8 V V
0 3 4
28 10
4 16 6 0 3
30
2 3
8
25
5 0 15 10
V V V
5 0 6 7 7
15 0
10 8 6 7
2
V 0
0
8 12 1 2 2
2 2
V10 V11
4
V 0 20
9

(giá trị thông qua là các số màu đỏ)

41
Lời giải:
Luồng φ có đường đi (V0, V1), (V1, V3), (V3, V7), (V7, V10), (V10, V9),
(V9, V11) bao gồm các cung chưa bão hòa. Ta có thể nâng luồng φ lên 2 đơn
vị để có luồng φ1:

+0
6 6
V V
10
10 1 8 15 2 6
10 4 0
0 +1
20 16
V 8 8 V V
0 3 4
28 10
4 16 6 2 3
30
2 3
8
+3 25
5 0 15 10
V V V
5 0 6 7 7
15 0
10 8 6 7
2
V +7 2
0
8 12 1 2 2
2
-
0
V10 V11
10 4
V 2 20
+9
9

φ1

Xét xích α=(V0, V5, V8, V9, V11). Nâng luồng φ1 lên 2 đơn vị ta được
luồng φ2:

+5
+0 +8
V 2+2
2+2 V
V 8
9
5 2+2
2+2
0 +9
V
V11
0 Xích α

42
6 6
V V
10
10 1 8 15 2 6
10 4 0
0
20 16
V 8 8 V V
0 3 4
28 10
4 16 6 2 3
30
4 3
8
25
+0 5 0 15 10
V V V
5 0 6 7 7
15 0
10 8 6 7
4 2
V
0
8 12 1 2 2
+5 4 +8 0
V10 V11
4
V 4 20
+9
9

φ2

Xét xích β=(V0, V6, V7, V3, V4, V11).Nâng luồng φ2 lên 2 đơn vị ta
được φ3:

+6

V -7
+0 2-2
10+2 7 V
V 3
16+2 +3
6 V
4
16+2 25+2
0

V
V11
0
Xích β
+4

43
6 6
V V
10
10 1 8 15 2 6
10 4 0
0 -7 +3
20 18
V 8 8 V V
0 3 4
28 10
4 18 6 0 3
30
4 3
8
+0 +6 27
5 0 15 12
V V V
5 0 6 7 7
15 0
10 8 6 7
4 2
V
0
8 12 1 2 2
4 0
V10 V11
4
V 4 20
+4
9

φ3

Tiếp theo ta chỉ có thể đánh dấu V0 nên quá trình nâmg luồng kết thúc
và ta có giá trị luồng cực đại là:
φ3=27+2+7+4=40

* Bài 8:
Hãy giải bài toán người du lịch với 6 thành phố có số liệu cho trong
ma trận trọng số sau:

∞ 25 45 14 32 24
9 ∞ 16 2 34 23
22 11 ∞ 33 7 0
23 14 27 ∞ 20 21
14 44 29 46 ∞ 3
25 3 4 7 8 ∞

44
Lời giải:
Ma trận trọng số M:

∞ 25 45 14 32 24
9 ∞ 16 2 34 23
22 11 ∞ 33 7 0
23 14 27 ∞ 20 21
14 44 29 46 ∞ 3
25 3 4 7 8 ∞
* Ma trận rút gọn M’:

1 2 3 4 5 6
1∞ 11 30 0 13 10
2 0 ∞ 13 0 27 21
3 15 11 ∞ 33 2 0
4 2 0 12 ∞ 1 7
5 4 41 25 43 ∞ 0
6 15 0 0 4 0 ∞
Tổng hằng số rút gọn s=49
Trong M’ có m’14=m’21=m’24=m’36=m’42=m’56=m’62=m’63=m’65=0
θ14=10 θ21=2 θ24=0 θ36=2 θ42=1 θ56=4
θ62=0 θ63=12 θ65=1
Ta thấy θ63=12là lớn nhất. Vậy chọn ô (6,3) để phân nhánh. Cận
dưới của nhánh không chứa (6,3) là s+θ63=49+12=61.Xóa dòng 6 cột 3 rồi
đặt m'36=∞.
Tập các hành trình
Cận dưới =49

Hành trình chứa cạnh (6,3) Hành trình không chứa (6,3)

Cận dưới=49 Cận dưới=61

1 2 4 5 6
1 ∞ 11 0 13 10
2 0 ∞ 0 27 21
3 15 11 33 2 ∞
4 2 0 ∞ 1 7
5 4 41 43 ∞ 0

45
* Ma trận rút gọn M'':

1 2 4 5 6
1 ∞ 11 0 13 10
2 0 ∞ 0 27 21
3 13 9 31 0 ∞
4 2 0 ∞ 1 7
5 4 41 43 ∞ 0

Tổng hằng số rút gọn s''=2.


m''14=m''21=m''24=m''35=m''42=m''56=0
θ14=10 θ21=2 θ24=0 θ35=10
θ42=10 θ56=11
Ta thấy θ56=11 là lớn nhất. Vậy chọn ô (5,6) để phân nhánh.Cận
dưới của nhánh chứa (5,6) là 49+2=51.Cận dưới của nhánh không chứa cạnh
(5,6) là 51+11=62.Xóa dòng 5 cột 6, sau đó đặt m''35=∞.

Hành trình chứa (6,3)


Cận dưới=49

Hành trình chứa (5,6) Hành trình không chứa (5,6)


Cận dưới=51 Cận dưới =62

1 2 4 5
1 ∞ 11 0 13
2 0 ∞ 0 27
3 13 9 31 ∞
4 2 0 ∞ 1

* Ma trận rút gọn M''': Tổng hằng số rút gọn s'''=10

1 2 4 5
1
∞ 11 0 12
2 0 ∞ 0 26
3 4 0 22 ∞
4 2 0 ∞ 0
Trong ma trận trên có m'''14=m'''21=m'''24=m'''42=0
θ14=11 θ21=2 θ24=0 θ42=0
θ32=4 θ45=12

46
Ta thấy θ45=12 là lớn nhất. Vậy chọn ô (4,5) để phân nhánh.Cận
dưới của nhánh chứa (4,5) là 51+10=61.Cận dưới của nhánh không chứa
cạnh (4,5) là 61+12=73. Xóa dòng 4 cột 5, sau đó đặt m'''34 = ∞.

Hành trình chứa (5,6)


Cận dưới=51

Hành trình chứa (1,4) Hành trình không chứa (1,4)


Cận dưới=61 Cận dưới=73

1 2 4
1 ∞ 11 0
2 0 ∞ 0
3 4 0 ∞

* Ma trận rút gọn M'''':

1 2 4
1 ∞ 11 0
2 0 ∞ 0
3 4 0 ∞
Trong ma trận trên có:
Tổng hằng số rút gọn s''''=0
m''''21=m''''32 =m''''14 =m''''24 =0
θ21=4 θ14=11 θ24=0 θ32=15
Ta thấy θ32=15 là lớn nhất nên ta chọn ô (3,2) để tiếp tục phân
nhánh.Cận dưới của nhánh chứa (3,2) là 61. Xóa dòng 3 cột 2 , sau đó đặt
m''''24=∞. Cận dưới của nhánh không chứa (3,2) là 61+15=76.
Hành trình chứa (1,4)
Cận dưới=51

Hành trình chứa (2,1) Hành trình không chứa (2,1)


Cận dưới=61 Cận dưới=76

1 4
1 ∞ 0
2 0 ∞

* Ma trận rút gọn M''''': Tổng hằng số rút gọn s'''''=0

47
1 4
1 ∞ 0
2 0 ∞
Hai cạnh còn lại của chu trình không phải chọn nữa mà được đưa
vào chu trình.
Ở đây ta có các cạnh (6,3), (5,6), (4,5), (3,2), (1,4), (2,1).
Vậy ta được chu trình: 6, 3, 2, 1, 4, 5, 6 với chi phí 61 là tối ưu.

48
BÀI TẬP TOÁN RỜI RẠC
---&0&---

CHƯƠNG 5:

CÂY
Giảng viên : Nguyễn Mậu Hân
Sinh viên thực hiện : Nguyễn Thị Diệu Hằng
Lớp : TinK30D

49
* Bài 1:
Vẽ tất cả các cây ( không đẳng cấu ) có:
a) 4 đỉnh b) 5 đỉnh c) 6 đỉnh
Lời giải:
a)

b)

* Bài 2:
Một cây có n2 đỉnh bậc 2, n3 đỉnh bậc 3, ..., nk đỉnh bậc k. Hỏi có bao
nhiêu đỉnh bậc 1?
Lời giải:

50
Gọi n1: số đỉnh bậc 1 của cây.
Ta có:
- Số đỉnh của cây: n1+n2+n3+...+nk
- Số cạnh của cây: n1+n2+n3+...+nk-1
- Số bậc của cây: n1+2.n2+3.n3+...+k.nk
Cây là một đồ đơn đồ thị, do vậy, nó sẽ có tổng bậc bằng 2 lần số
cạnh. Tức là:
n1+2.n2+3.n3+...+k.nk=2(n1+n2+n3+...+nk-1)
n1= n3+2n4+...+(k-2)nk+2

* Bài 3:
Tìm số tối đa các đỉnh của một cây m-phân có chiều cao h.
Lời giải:
Cây m-phân có chiều cao h. Vậy trong cây này, các đỉnh sẽ được xếp
vào h+1mức(từ mức 0đến mức h).Số đỉnh của cây chính là tổng các đỉnh
trong các mức này .
Ta có: Giá trị max của:
- Số đỉnh thuộc mức 0: 1 =m0 (do chỉ có 1 đỉnh gốc)
- Số đỉnh thuộc mức 1: m = m1
- Số đỉnh thuộc mức 2: m.m= m2
- Số đỉnh thuộc mức 3: m.m.m= m3
- ...
- Số đỉnh thuộc mức h: mh
Suy ra:
Số đỉnh tối đa của cây m-phân có chiều cao h là:
h

1+m +m +m +...+m = ∑mi


1 2 3 h

i=0

* Bài 4:
Có thể tìm được một cây có 8 đỉnh và thỏa điều kiện dưới đây hay
không? Nếu có, vẽ ra, nếu không, giải thích tại sao:
a) Mọi đỉnh đều có bậc 1.
b) Mọi đỉnh đều có bậc 2.
c) Có 6 đỉnh bậc 2 và 2 đỉnh bậc 1.
d) Có đỉnh bậc 7 và 7 đỉnh bậc 1.
Lời giải:
a) Không có.
Giải thích: Cây là một đơn đồ thị liên thông, không chứa chu trình
và có ít nhất 2 đỉnh. Trong đơn đồ thị liên thông, giữa 2 đỉnh bất kì luôn tồn
tại đường đi giữa chúng nên trong cây sẽ chứa một số đỉnh có bậc khác 1.
51
b) Không có.
Giải thích: Ta có: Nếu T là một cây có n đỉnh thì T có ít nhất 2
đỉnh treo( có bậc 1). Vậy, không thể tìm ra một cây có mọi đỉnh đều có bậc
2.
c) Có.
Ví dụ:

d) Có. Ví dụ:

* Bài 5:
Chứng minh hoặc bác bỏ các mệnh đề sau:
a) Trong một cây, đỉnh nào cũng là đỉnh cắt
b) Một cây có số đỉnh không nhỏ hơn 3 thì có nhiều đỉnh cắt hơn là
cầu.
Lời giải:
a) Trong một cây, đỉnh nào cũng là đỉnh cắt.
Mệnh đề trên sai.
Trong một cây luôn có ít nhất 2 đỉnh treo và đỉnh treo không phải là
đỉnh cắt(do khi xóa nó và cạnh liền kề với nó thì không tạo ra nhiều thành
phần lên thông hơn).

b) Một cây có số đỉnh không nhỏ hơn 3 thì có nhiều đỉnh cắt hơn là
cầu.
Mệnh đề trên sai.
Cho một cây T có n đỉnh. Trong một cây, mỗi cạnh đều là cầu. Như
vậy, số cầu của T là n-1( do trong T có n-1 cạnh).
Mặt khác, trong một cây, ngoài các đỉnh treo thì tất cả các đỉnh còn lại
đều là đỉnh cắt.Một cây chứa ít nhất 2 đỉnh treo, do đó số đỉnh cắt lớn nhất
có thể có là n-2
Số cầu = n-1

52
Số đỉnh cắt ≤ n-2
Vậy, trong một cây, cầu có nhiều hơn đỉnh cắt.

* Bài 6:
Có 4 đội bóng đá A, B, C, D lọt vào vòng bán kết giải đội mạnh khu
vực. Có mấy dự đoán xếp hạng như sau:
- Đội B vô địch, đội D nhì.
- Đội B nhì, đội C ba.
- Đội A nhì, đội C tư.
Biết rằng mỗi dự đoán trên đúng về một đội. Hãy cho biết kết quả xếp
hạng của các đội.
Lời giải:
Theo đề ra thì mỗi dự đoán đúng về một đội.
Giả sử ở dự đoán đầu tiên: B vô địch, D nhì thì dự đoán về D
đúng.Vậy D nhì.
Ở dự đoán 2: B nhì, C ba.Do D nhì nên dự đoán B nhì không
đúng → C ba đúng.
Ở dự đoán 3: A nhì, C tư.Do C đứng thứ ba nên dự đoán C tư
sai → A nhì( vô lý, do dự đoán D nhì là đúng)
Vậy ở dự đoán đầu tiên, dự đoán B vô địch đúng.B vô địch nên ở dự
đoán 2, dự đoán đội C ba đúng, và ở dự đoán thứ 3 đội A nhì đúng, và cuối
cùng, đội D đứng thứ tư.
Xếp hạng các đội là:
Vô địch :B
Nhì :A
Ba :C
Tư :D

B vô địch C ba A nhì

Dự đoán

D nhì C ba A nhì

Vô lí

* Bài
Cây7:Fibonacci có gốc Tn được định nghĩa bằng hồi quy như sau: T1
và T2 đều là cây có gốc chỉ gồm 1 đỉnh; với n=2, 3, 4... thì cây có gốc Tn

53
được xây dựng từ gốc với Tn-1 như là cây con bên trái và Tn-2 như cây con
bên phải.
a) Hãy vẽ 7 cây Fibonacci có gốc đầu tiên
b) Cây Fibonacci Tn có bao nhiêu đỉnh, lá và bao nhiêu đỉnh trong.
Chiều cao của nó bằng bao nhiêu?
Lời giải:
a) 7 cây Fibonacci có gốc đầu tiên:

T1 T2 T3 T4

T5

T6

54
T7

b)
Gọi li, ni và ti lần lượt là số lá, đỉnh và đỉnh trong của cây Fibonacci
Ti(i≥3), hi là chiều cao.
Ta có:
li = li-1 + li-2
ni = ni-1 + ni-2 + 1
t i = ni - l i
hi = hi-1 + 1
Trường hợp riêng:
l1 = l2 = 1
n1 = n2 = 1
h1 = h2 = 0

* Bài 8:
Hãy tìm cây khung của đồ thị sau bằng cách xóa đi các cạnh trong
các chu trình đơn:
a)
a b c

d e f g

h i j

55
a b
d
f
c g e
h
h
g
f

i j
h

k l
Lời giải:
Có nhiều cây khung có thể được tạo ra bằng cách xóa đi các cạnh
trong các chu trình đơn. Sau đây là một số ví dụ:
a)

a b c

d e f g

h i j

a b c

d e f g

h i j

56
a b c

d e f g

h i j
b)

a b
d
f
c g e
h
h
g
f

i j
h

k l

a b
d
f
c g e
h
h
g
f

i j
h

k l

57
* Bài 9:
Hãy tìm cây khung cho mỗi đồ thị sau:
a) K5 b) K4,4 c) K1,6
d) Q3 e) C5 f) W5
Lời giải:
a) K5

b) K4,4

58
c) K1,6

K1,6
Bản thân K1,6 là một cây khung.
d) Q3

e) C5

59
f) W5

* Bài 10:
Đồ thị Kn với n=3, 4, 5 có bao nhiêu cây khung không đẳng cấu
Lời giải:
K3: có 1 cây khung

K4: có 2 cây khung( không đẳng cấu )

K5:

60
* Bài 11:
Tìm cây khung nhỏ nhất của đồ thị sau theo thuật toán Kruskal và
Prim:
42
a b
4 10 14 3

3 1 11
c d e f
5 20 9
15
7
g h
Lời giải:

+ Giải theo thuật toán Kruskal:


Thứ tự của các cạnh sắp xếp theo thứ tự không giảm:
(d,e), (b,f), (c,d), (a,c), (d,g), (g,h), (h,f), (a,e), (e,f), (b,e), (c,g), (d,h), (a,b)
Bắt đầu từ đồ thị rỗng T có 6 đỉnh.
- Thêm vào T cạnh (d,e)→ số cạnh của T là 1<8-1
- Thêm vào T cạnh (b,f) → số cạnh của T là 2<8-1
- Thêm vào T cạnh (c,d)→ số cạnh của T là 3<8-1
- Thêm vào T cạnh (a,c)→ số cạnh của T là 4<8-1
- Thêm vào T cạnh (d,g)→ số cạnh của T là 5<8-1
- Thêm vào T cạnh (g,h)→ số cạnh của T là 6<8-1
- Thêm vào T cạnh (h,f)→ số cạnh của T là 7→ Dừng quá trình
thêm cạnh vào T. Đồ thị T vừa tạo ra chính là cây khung nhỏ nhất của đồ thị
trên.
ET={(d,e), (b,f), (c,d), (a,c), (d,g), (g,h), (h,f)}

a b
4 3

3 1
c d e f
5 9

7
g h
Độ dài cây khung T: 4+3+1+5+7+3+9=32

61
+ Giải theo thuật toán Prim:
Ta có ma trận trọng số của đồ thị trên là:

a b c d e f g h
a ∞ 42 4 ∞ 10 ∞ ∞ ∞
b 42 ∞ ∞ ∞ 14 3 ∞ ∞
c 4 ∞ ∞ 3 ∞ ∞ 15 ∞
d ∞ ∞ 3 ∞ 1 ∞ 5 20
e 10 14 ∞ 1 ∞ 11 ∞ ∞
f ∞ 3 ∞ ∞ 11 ∞ ∞ 9
g ∞ ∞ 15 5 ∞ ∞ ∞ 7
h ∞ ∞ ∞ 20 ∞ 9 7 ∞

V.lặp a b c d e f g h VT ET
K.Tạo - [a,42 [a,4 ∞ [a,10 ∞ ∞ ∞ a Ø
] ] ]
1 - [a,42 - [c,3] [a,10 ∞ [c,15] ∞ a, c (a,c)
] ]
2 - [a,42 - - [d,1] ∞ [d,5] [d,20] a,c,d (a,c),(c,d)
]
3 - [e,14] - - - [e,11] [d,5] [d,20] a,c,d,e (a,c),(c,d)
(d,e)
4 - [e,14] - - - [e,11] - [g,7] a,c,d,e,g (a,c),(c,d)
(d,e),(d,g)
5 - [e,14] - - - [h,9] - - a,c,d,e,g,h (a,c),(c,d)
(d,e),(d,g),
(g,h)
6 - [f,3] - - - - - - a,c,d,e,g,h,f (a,c),(c,d)
(d,e),(d,g),
(g,h),(h,f)
7 - - - - - - - - a,c,d,e,g,h,f,b (a,c),(c,d)
(d,e),(d,g),
(g,h),(h,f),
(f,b)

Vậy cây khung nhỏ nhất của đồ thị trên có độ dài là:
4+3+1+5+7+9+3=32
Cây khung với tập cạnh:
E={(a,c),(c,d)(d,e),(d,g),(g,h),(h,f),(f,b)}

* Bài 12:

62
Tìm cây khung nhỏ nhất bằng thuật toán Prim của đồ thị gồm các
đỉnh A, B, C, D, E, F, H, I được cho bởi ma trận trọng số sau:

A B C D E F H I
A ∞ 16 15 23 19 18 32 20
B 16 ∞ 13 33 24 20 19 11
C 15 13 ∞ 13 29 21 20 19
D 23 33 13 ∞ 22 30 21 12
E 19 24 29 22 ∞ 34 23 21
F 18 20 21 30 34 ∞ 17 14
H 32 19 20 21 23 17 ∞ 18
I 20 11 19 12 21 14 18 ∞
Yêu cầu viết kết quả trung gian trong từng bước lặp, kết quả cuối
cùng cần đưa ra tập cạnh và độ dài của cây khung nhỏ nhất.
Lời giải:

A B C D E F H I VT ET
- [A,16] [A,15] [A,23] [A,19] [A,18] [A,32] [A,20] A Ø
- [C,13] - [C,13] [A,19] [A,18] [C,20] [C,19] A,C (A,C)
- - - [C,13] [A,19] [A,18] [B,19] [B,11] A,C,B (A,C),(C,B)
- - - [I,12] [A,19] [I,14] [I,18] - A,C,B,I (A,C),(C,B)
(B,I)
- - - - [A,19] [I,14] [I,18] - A,C,B,I,D (A,C),(C,B)
(B,I),(I,D)
- - - - [A,19] - [F,17] - A,C,B,I,D,F (A,C),(C,B)
(B,I),(I,D),
(I,F)
- - - - [A,19] - - - A,C,B,I,D,F,H (A,C),(C,B)
(B,I),(I,D),
(I,F),(F,H)
- - - - - - - - A,C,B,I,D,F,H,E (A,C),(C,B)
(B,I),(I,D),
(I,F),(F,H),
(A,E)
Độ dài cây khung nhỏ nhất tìm được:
15+13+11+12+14+17+19=101
Tập cạnh của cây khung nhỏ nhất:
E={(A,C),(C,B)(B,I),(I,D),(I,F),(F,H),(A,E)}

* Bài 13:
Duyệt các cây sau đây lần lượt bằng các thuật toán tiền thứ tự, trung
thứ tự và hậu thứ tự:

63
a)
a

b c

f
d e

h
g

i j
b)
a

b c

d e
f g

h i
j k l

m n
o

p q
Lời giải:
a)
* Duyệt theo tiền thứ tự:
1. Thăm a.
2. Duyệt T(b):
2.1. Thăm b.
2.2. Duyệt T(d): Thăm d.
2.3. Duyệt T(e):
2.3.1. Duyệt T(g): Thăm g.
3. Duyệt c:
3.1. Thăm c
64
3.2. Duyệt T(f):
3.2.1. Thăm f
3.2.2. Duyệt T(h):
3.2.2.1. Thăm h
3.2.2.2. Duyệt T(i): Thăm i
3.2.2.3. Duyệt T(j): Thăm j
Kết quả duyệt cây theo tiền thứ tự là:
a, b, d, e, g, c, f, h, i, j

* Duyệt theo trung thứ tự:


1. Duyệt T(b):
1.1. Duyệt T(d): Thăm d
1.2. Thăm b
1.3. Duyệt T(e):
1.3.1. Duyệt T(g): Thăm g
1.3.2. Thăm e
2.Thăm a
3. Duyệt T(c):
3.1. Thăm c
3.2 Duyệt T(f):
3.1.1. Duyệt T(h):
3.1.1.1. Duyệt T(i): Thăm i
3.1.1.2. Thăm h
3.1.1.3. Duyệt T(j): Thăm j
Kết quả duyệt cây theo trung thứ tự:
d, b, g, e, a, c, i, h, j, f

* Duyệt theo hậu thứ tự:


1. Duyệt T(b):
1.1. Duyệt T(d): Thăm d
1.2. Duyệt T(e):
1.2.1. Duyệt T(g): Thăm g
1.2.2. Thăn e
1.3. Thăm b
2. Duyệt T(c):
2.1.Duyệt T(f):
2.1.1. Duyệt T(h):
2.1.1.1. Duyệt T(i): Thăm i
2.1.1.2. Duyệt T(j): Thăm j
2.1.1.3.Thăm h
65
2.1.2.Thăm f
2.2. Thăm c
3. Thăm a
Kết quả duyệt cây theo hậu thứ tự:
d,g, e, b, i, j, h, f, c, a

b)
* Duyệt theo tiền thứ tự:
1. Thăm a
2. Duyệt T(b):
2.1. Thăm b
2.2. Duyệt T(d): Thăm d
2.3. Duyệt T(e):
2.3.1. Thăm e
2.3.2. Duyệt T(g): Thăm g
3. Duyệt T(c):
3.1. Thăm c
3.2. Duyệt T(f):
3.2.1. Thăm f
3.2.2. Duyệt T(h):
3.2.2.1. Thăm h
3.2.2.2. Duyệt T(i): Thăm i
3.2.2.3. Duyệt T(j): Thăm j
Kết quả duyệt cây theo tiền thứ tự:
a, b, d, e, g, c, f, h, i, j
* Duyệt cây theo trung thứ tự:
1. Duyệt T(b):
1.1. Duyệt T(d):
1.1.1. Duyệt T(h): Thăm h
1.1.2. Thăm d
1.1.3. Duyệt T(i):
1.1.3.1. Duyệt T(m): Thăm m
1.1.3.2. Thăm i
1.1.3.3. Duyệt T(n):
1.1.3.3.1. Duyệt T(p): Thăm p
1.1.3.3.2. Thăm n
1.1.3.3.3. Duyệt T(q): Thăm q
1.2. Thăm b
1.3. Duyệt T(e): Thăm e
66
2.Thăm a
3. Duyệt T(c):
3.1. Duyệt T(f):
3.1.1. Duyệt T(j): Thăm j
3.1.2. Thăn f
3.1.3. Duyệt T(k):
3.1.3.1. Duyệt T(o): Thăm o
3.1.3.2. Thăm k
3.2. Thăm c
3.3. Duyệt T(g):
3.3.1. Thăm g
3.3.2. Duyệt T(l): Thăm l
Kết quả duyệt cây theo trung thứ tự:
h, d, m, i, p, n, q, b, e, a, j, f, o, k, c, g, l

* Duyệt cây theo hậu thứ tự:


1. Duyệt T(b):
1.1. Duyệt T(d):
1.1.1. Duyệt T(h): Thăm h
1.1.2. Duyệt T(i):
1.1.2.1. Duyệt T(m): Thăm m
1.1.2.2. Duyệt T(n):
1.1.2.2.1. Duyệt T(p): Thăm p
1.1.2.2.2. Duyệt T(q): Thăm q
1.1.2.2.3.Thăm n
1.1.2.3. Thăm i
1.1.3. Thăm d
1.2. Duyệt T(e): Thăm e
1.3. Thăm b
2. Duyệt T(c):
2.1. Duyệt T(f):
2.1.1. Duyệt T(j): Thăm j
2.1.2. Duyệt T(k):
2.1.2.1. Duyệt T(o): Thăm o
2.1.2.2. Thăm k
2.1.3. Thăm f
2.2. Duyệt T(g):
2.2.1. Duyệt T(l): Thăm l
2.2.2. Thăm g
2.3. Thăm c
67
3. Thăm a.
Kết quả duyệt cây theo hậu thứ tự:
h, m, p, q, n, i, d, e, b, j, o, k, f, l, g, c, a

* Bài 14:
Viết các biểu thức sau đây theo kí pháp Ba Lan và kí pháp Ba Lan
đảo:
( A + B )(C + D) A 2 + BD
a) + 2
( A − B )C + D C − BD

2 4
 a − d  (3a + 4b − 2d )
3
 c 
b)  ( a − b ) 4
− − 5d  +  
 3   3  5
Lời giải:
( A + B )( C + D) A + BD 2

a) + 2
( A − B )C + D C − BD
Ta có thể vẽ cây nhị phân tương ứng với biểu thức trên như sau:
+

/ /

* + + -


+ + * D ↑ * *

A B C D - C A 2 B D C 2 B D

A B
Kết quả duyệt cây nhị phân trên theo tiền thứ tự sẽ cho ta cách viết
của biểu thức trên theo kí pháp Ba Lan, nếu duyệt theo hậu thứ tự thì sẽ cho
ta cách viết theo kí pháp Ba Lan đảo.
Vậy ta có biểu thức trên được biểu diễn theo:
- Kí pháp Ba Lan:
+/*+AB+CD+*-ABCD/+↑A2*BD-↑C2*BD
- Kí pháp Ba Lan đảo:
AB+CD+*AB-C*D+/A2↑BD*+C2↑BD*-/+

68
2 4
 a − d  (3a + 4b − 2d )
3
 c 
b)  ( a − b ) 4
− − 5d  +  
 3   3  5
Cây nhị phân tương ứng:
+

↑ *

- 2 ↑ /

↑ 5
↑ +
/ 4
- 4 / * - 3

a b c 3 5 d
+ *
- 3
2 d

a d
* *

3 a 4 b
Kết quả duyệt cây nhị phân trên theo tiền thứ tự sẽ cho ta cách viết
của biểu thức trên theo kí pháp Ba Lan, nếu duyệt theo hậu thứ tự thì sẽ cho
ta cách viết theo kí pháp Ba Lan đảo.
Vậy ta có biểu thức trên được biểu diễn theo:
- Kí pháp Ba Lan:
+↑-↑-ab4+/c3*5d2*↑/-ad34/↑-+*3a*4b*2d35
- Kí pháp Ba Lan đảo:
ab-4↑c3/5d*+-2ad-3/4↑3a*4b*+2d*-3↑5/*+

* Bài 15:
Viết các biểu thức sau đây theo kí pháp quen thuộc:
a) x y + 2 ↑ x y – 2 ↑ - x y * /
b) - * ↑ / - - a b * 3 c 2 4 ↑ - c d 5 * - - a c d / ↑ - b * 2 d 4 3
Lời giải:
69
a) x y + 2 ↑ x y – 2 ↑ - x y * /

(x+y) 2 ↑ (x-y) 2 ↑ - xy /
(x+y)2 (x-y)2 - xy /

[ (x+y)2 – (x-y)2 ] xy /

[(x+y)2 – (x-y)2 ]
__________________________

xy

b) - * ↑ / - - a b * 3 c 2 4 ↑ - c d 5 * - - a c d / ↑ - b * 2 d 4 3

- * ↑ / - (a-b) 3c 2 4 ↑ (c-d) 5 * - (a-c) d /↑ - b 2d 4 3

- * ↑ / (a-b-3c) 2 4 (c-d)5 * (a-c-d) / (b-2d)4 3

a-b-3c (b-2d)4
________
-*↑ 4 (c-d)5 * (a-c-d) _______

2 3

4
a-b-3c (b-2d)4
________
-* (c-d)5 (a-c-d) _______

2 3

4
a-b-3c (b-2d)4
________
- (c-d)5 (a-c-d) _______

2 3

4
a-b-3c (b-2d)4
________
(c-d)5 - (a-c-d) _______

2 3

70

You might also like