ĐẶNG NGỌC HOÀNG THÀNH
ĐẶNG NGỌC HOÀNG THÀNH
GIÁO TRÌNH
TOÁN RỜI RẠC
Huế, 2011
CHƯƠNG 1. MỞ ĐẦU
2
MỤC LỤC
CHƯƠNG 1. MỞ ĐẦU 4
4
10
16
CHƯƠNG 2. BÀI TOÁN ĐẾM 29
29
31
33
CHƯƠNG 3. BÀI TOÁN TỒN TẠI 41
41
44
3.2. Nguyên lý Dirichlet 46
CHƯƠNG 4. BÀI TOÁN LIỆT KÊ 48
48
49
CHƯƠNG 5. BÀI TOÁN TỐI ƯU 53
53
53
CHƯƠNG 6. LÝ THUYẾT ĐỒ THỊ 72
6. 72
6.1.1. 73
6. 76
6.1.3. 81
6.1.4. Hành trình và chu trình 82
6.2. 90
6. 90
93
95
6.3. 96
6. 96
6. 97
6.4 98
CHƯƠNG 1. MỞ ĐẦU
3
TÀI LIỆU THAM KHẢO 101
CHƯƠNG 1. MỞ ĐẦU
CHƯƠNG 1. MỞ ĐẦU
1.1. Tập hợp
1.1.1. Khái niệm tập hợp
các
t là tp. Ví d tp hp A hay tp A.
Cho mt tp hp A, và mt phn t a ca tp hp A. Ta nói rng, phn t a thuc tp
hp A. Kí hiu
tp hp A thì ta nói rng, phn t b không thuc tp hp
A và kí hiu
Các cách biểu diễn tập hợp
a)
t c hoc mt phn các phn t trong tp hp
- Tp các s t nhiên chn
b)
CHƯƠNG 1. MỞ ĐẦU
5
không lit kê tt c các phn t ca nó mà ch nêu các tính cha tp
hp.
Hay
1.1.2. Tập hợp con, Tập hợp rỗng và Tập hợp bao trùm
a. Tập hợp coni phn t ca tp
hp A thuc vào tp hp B. Kí hiu .
Nu tp hp A là con ca tp h gi tp hp B là cha ca tp hp A.
u s c thay bng kí hiu .
Nu tp hp và thì ta nói rng tp .
Nu tp hp hoc thì ta nói A là tp con hoc bng B và kí hiu .
Trong nhing hi ta s gi tp A là con ca tp B và
.
b. Tập hợp rỗng
c. Tập hợp bao trùmbao trùm
(hay t). Tp hp bao c kí hiu là .
a tp hp rng và tp bao trùm, ta có mt s
+ Tp hp rng là con ca mi tp hp bi tp hp rng không cha phn t nào.
là tp con ca tp bao trùm.
CHƯƠNG 1. MỞ ĐẦU
6
Lng ca tp hp. S ng các phn t ca mt tp hc gi là lng
ca tp hp. Kí hiu - c là lng ca tp hp A.
Mt tp hp có n phn t, thì có
có
tp con ca A. Các tp hp này
bao gm:
Tp các tp hp con ca tp hc kí hiu là .
1.1.3. Các phép toán trên tập hợp
.
Hình 1.1
a. Phép toán hợp
p B. Kí hiu .
Trong hình minh ha trên, hp ca hai tp hp A và B là tp hp cha ba phn 1, 2
và 3.
Ví d: Gi s ta có tp hp A và B. Yêu cu tìm hp ca hai tp hp A và B.
1 2
3
B
A
CHƯƠNG 1. MỞ ĐẦU
7
l
b. Phép toán giao
chung p hp. Kí hiu
Trong hình minh ha trên, giao ca hai tp hp A và B là tp hp cha phn 3.
Ví d: Gi s ta có tp hp A và B. Yêu cu tìm hp ca hai tp hp A và B.
A.
c. Phép toán hiệu
B\ . Trong
phân bit gia hai kí hiu này
1
.
Trong hình minh ha trên, hiu ca hai tp hp A và B là tp hp cha phn 1.
Ví d: Gi s ta có tp hp A và B. Yêu cu tìm hiu ca hai tp hp A và B.
Nu tp hp A là con ca tp hp B, thì hiu ca hai tp hp A và B là tp hp rng.
Phần bù tập hợp. Gi s tp hp A là con ca tp hp B và nm lt hn trong tp
hp B.
1
Nếu A thì hiệu của A và B được kí hiệu là A\B.
Nếu thì hiệu của A và B được kí hiệu là A-B.
CHƯƠNG 1. MỞ ĐẦU
8
Hình 1.2 Minh ha phn bù trên Tp hp
n bù ca tp hp A i vi tp hp
gin là phn bù ca B). Kí hiu
. Nu tp hp B là tp bao trùm, ta có th kí hiu
phn bù ca tp hp A là .
d. Phép toán hiệu đối xứng
ha các phn t thuc tp hp A mà không thuc tp hp B và các phn t
thuc tp hp B mà không thuc tp hp A. Kí hiu .
1
1 và 2.
ta có tp hp A và B. Yêu cu tìm hiu i xng ca hai tp hp A và B.
.
1.1.4. Các tính chất của các phép toán trên tập hợp
1
2
A
B
CHƯƠNG 1. MỞ ĐẦU
9
Định lý. Gi s A, B, C là các tp hp. E là t có các tính cht
a) Luật giao hoán
b) Luật kết hợp
c) Luật phân phối
+ Phân phối trái
+ Phân phối phải
d) Luật đồng nhất
e) Luật nuốt
f) Luật làm đầy
g) Luật lũy đẳng
CHƯƠNG 1. MỞ ĐẦU
10
h) Luật hấp thụ
i) Luật bù
j) Luật De-Morgan
1.1.5. Khái niệm về tích Descartes
Định nghĩa. Gi s A và B là hai tp hp. Mt tp hp gm các cp (a, b) vi và
, sao cho vi hai cp (a, b)=(c, d) khi và ch c gi là tích
Descartes ca hai tp hp A và B. Kí hiu AxB hay A.B.
Ví da hai tp A và B gm các cp
Tng quát, tích Descartes ca n tp hp
là tp hp gm các cp
vi
và
khi
và ch khi
. Kí hiu
.
Gi s tp
lt có
phn ta
n tp hp trên
s có
, hay ta có th vit
.
1.2. Phép chứng minh quy nạp toán học
1.2.1. Phương pháp quy nạp toán học
CHƯƠNG 1. MỞ ĐẦU
11
Bước 1
2
Bước 2
n=k+1.
sai.
Bước 3
Hình 1.3
thc
Bước 1. Vi n = 0. Ta có
V trái VT =
V phi VP = 0
Công thi n=0.
Đúng với n
0
Đúng với n=k
Đúng với n=k+1
CT đúng
CT sai
Đ
S
Đ
S
CHƯƠNG 1. MỞ ĐẦU
12
Bước 2. Gi s công thi n=k, tc là
Ta cn chng minh, công thi n = k+1, tc là
Ta có
bi vì
Kt hp vi gi thit quy np (*), ta có
Bước 3. Vy, công th
Bài tp. Chng minh các công thc sau bng quy np toán hc.
CHƯƠNG 1. MỞ ĐẦU
13
1.2.2. Phương pháp quy nạp hoàn toàn
ng thc ti ta s dng m
pháp khác có th áp d n t mt cách d
pháp quy np hoàn toàn.
Gi s ta cn ch i các giá tr
.
áp quy np hoàn toàn s thc hin kin ca bài toán
P(n) = Q(n) vi mi giá tr
.
sau:
bool QuyNapHoanToan(int n
0
, int n
1
)
{
for (int i=n
0
; i<=n
1
; i++)
if (P(i)!=Q(i))
return false;
return true;
}
Ví d, ta s s dng thut toán quy n kin ca câu
a) vi giá tr
#include<iostream>
#include<math.h>
using namespace std;
double P(int n)
{
double S = 0;
for (int i=0; i<=n; i++)
S+=powl(i, 2);
return S;
}
double Q(int n)
{
return (double)(n)*(n+1)*(2*n+1)/6;
CHƯƠNG 1. MỞ ĐẦU
14
}
bool QuyNapHoanToan(int n0, int n1)
{
for (int i=n0; i<=n1; i++)
if (P(i)!=Q(i))
return false;
return true;
}
int main()
{
if(QuyNapHoanToan(0, 9999))
cout<<"Dang thuc dung voi moi 0<=n<=9999";
else
cout<<"Dang thuc sai";
return 0;
}
Hãy vit gii thut quy np hoàn toàn cho các bài tp còn li.
1.2.3. Phép đệ quy và Cơ sở toán học của nó.
xác g qua phn t
Khái ni thc truy hi trong toán hc. Mt ví d
mô hình tính giai tha.
nh c
- Với n=0. Ta có giai thừa của 0 là 1.
- Với n=1, ta có 1!=1.0!=1.1=1.
- Với n=2, ta có 2!=2.1!=2.1=1.
…
- Với n=k, ta có k!=k.(k-1)!
…
CHƯƠNG 1. MỞ ĐẦU
15
Thiết kế giải thuật đệ quy.
Bước 1. Nếu rơi vào trường hợp suy biến, thì thực hiện trường hợp suy biến.
Bước 2. Nếu ngược lại, ta tiến hành thực hiện giải thuật gọi lại hàm đệ quy.
Ví dụ 1. Tính tng
Bước 1. Trường hợp suy biến n=1 thì S=1.
Bước 2. S(n)=n+S(n-1)
long S(int n)
{
if(n==1)
return 1;
else
return n+S(n-1);
}
Ví dụ 2
Bước 1. Trường hợp suy biến khi head->data == x.
Bước 2. Nếu ngược lại, ta chuyển sang tìm kiếm ở head->next.
struct Link
{
int data;
Link* next;
};
Link* head;
Link* search(int x, Link* head)
{
if(head->data==x)
return head;
else
return search(int x, head->next);
}
CHƯƠNG 1. MỞ ĐẦU
16
T
.
1.3. Sơ lược về tổ hợp
1.3.1. Các quy tắc tính toán
1.3.1.1. Quy tắc cộng
ng l thc hin công vic th
cách.
thc hin mt công vic trong n công vic trên, ta s có
cách.
Dấu hiệu nhận biếtxét
Bài 1.
bao nhiêu node.
Giải.
Bài 2. t
.
CHƯƠNG 1. MỞ ĐẦU
17
Giải.
.
-
-
.
g viên ca t b môn công ngh phn mm, B là tp hp các ging viên ca
t b t lng vic chn ca chúng ta s chính là lc
ng ca tp . Ta có
.
Bài 3. và
.
Giải. H
.
Bài 4. Cho
Giải.
-
-
-
CHƯƠNG 1. MỞ ĐẦU
18
-
-
-
-
-
Vy có 1+3+3+1 = 8 tp con ca tp A.
1.3.1.2. Quy tắc nhân
Quy tc nhân. Gi s cn thc hin mt công vic. Công vic này có th chia ra làm n
thc hin công vic c th
n, ta s có
cách.
Dấu hiệu nhận biếtnhân
) nhân.
Bài 1.
có bao
Giải.
nhau.
am
C có 3 cách;
có 3 cách;
CHƯƠNG 1. MỞ ĐẦU
19
C có 2 cách;
C có 2 cách.
ta có
Bài 2. nh
.
Giải.
- -
c
Bài 3.
Giải.
c nhân, ta có 20.20.20.20.20=32.10
5
1.3.2. Các cấu hình tổ hợp
1.3.2.1. Hoán vị không lặp và Hoán vị vòng
a. Hoán vị.
tính
CHƯƠNG 1. MỞ ĐẦU
20
-
- -
).
-
u: hai cách sp xp là khác nhau khi
hai phn t cùng ch s là khác nhau. Vy theo quy tc nhân, ta có n.(n-
sp xp.
Bài toán hoán v ca n phn t có n! cách sp xp.
Công thức tính số hoán vị. Hoán v c kí hiu là
,
b. Hoán vị vòng.
tr
ho
th quy v hoán v tuyn tính ca n-1 phn t
vòng ca n phn t s có (n-1)! cách sp xp.
Công thức tính số hoán vị vòng. Hoán v c kí hiu là
.
Chú ý. C :
-
CHƯƠNG 1. MỞ ĐẦU
21
-
.
.
Bài 1.
Giải.
1.
x
đ
v
2.
x
v
đ
3.
đ
x
v
4.
đ
v
x
5.
v
x
đ
6.
v
đ
x
Bài 2. g tròn, thì
Giải. -1)!=2 cách.
khác
v
đ x
v
x đ
CHƯƠNG 1. MỞ ĐẦU
22
Bài 3. Có
Giải
Bài 4.
Giải
1.3.2.2. Chỉnh hợp không lặp và Chỉnh hợp lặp
a. Chỉnh hợp không lặp.
.
.
t có -1 cách chi phn t th k, ta
có n-k+1 cách chn. Vic tin hành chn mc có quan h vi nhau. Theo quy
tc nhân, ta có
Vy bài toán chnh hp không lp chp k có
b phn t.
Công thc tính s chnh hp không lp chp k ca n phn t. Chnh hp không lp
chp k ca n phn t c kí hiu là
.
CHƯƠNG 1. MỞ ĐẦU
23
b. Chỉnh hợp lặp. n
và c
ên. Chúng
t có
có
c nhân, ta có
Vy bài toán chnh hp lp chp k có
b phn t.
Công thc tính s chnh hp lp chp k ca n phn t. Chnh hp lp chp k ca n
phn t c kí hiu là
.
Chú ý. C.
-
-
.
Bài 1.
Giải. :
CHƯƠNG 1. MỞ ĐẦU
24
-
-
-
h hp.
- Mt vng viên không cho phép lp li (bi h không th phân thân thành 2).
T nhng nhn xét trên, ta s chn chnh hp không l áp dng cho bài toán này
vy, ta có
cách
.
Bài 2. :
-
-
-
-
Bài 3. khác nhau
ân bit th t và không th lp li, nên ta áp
dng chnh hp không lp. Vy có
Bài 4. th
ra. thí sinh ch.
Giải.