TRR
CÁC THUẬT TOÁN
1.TÌM SỐ NGUYÊN LỚN NHẤT:
procedure max(a1,a2,..an: Integer)
max:=a1;
for i:=2 to n do
if max< ai then max:=ai
{max...}
2. TIM VI TRI CUA 1 SO NGUYEN TRONG DAY SO
procedure tim_vi_tri(x, a1, ...an:integer)
i:=1
while(i<n) and (x#ai)
i:=i+1
if i<=n then location:=i
selse location:=0
{location: vi tri cua so nguyen trong day}
3.KHAI TRIEN 1 SO NGUYEN N THEO CO SO B
procedure khai_trien(n:positive integer)
q:=n
k:=0
while q#0
begin if ak:=q mod b
q:= [q/b]
k:=k+1
end;
4. CONG 2 SO NGUYEN DUONG a,b
Procedure cong(a,b: positice integer)
{khai trien a,b thanh 2 xau nhi phan}
(ak ak-1....a0)2
(bk bk-1...b0)2
c:=0
for j:= 0 to k-1 do
be gin
d:=[(aj+bj+c)/2];
Sj:= aj+bj+c -2d;
c:=d;
end;
Sk+1:=c;
5. NHAN 2 SO NGUYEN a,b
Procedure nhan(a,b: positive integer)
{khai trien a,b thanh 2 xau nhi phan}
(an-1....a0)2
(bn-1...b0)2
for j:=0 to n-1 do
begin
if bj:=1 then cj:=a {dich di j cho}
else cj:=0
end;
{duoc C0, C1,...Cn-1 la tich rieng}
p:=0;
for j:=0 to n-1 do
pi = p+ Cj;
6. NHAN 2 MA TRAN
procedure nha_ma_tran(A, B: ma tran)
for i:=1 to m do
begin Cik:=0
for j:=1 to n do
Cik:= Cik+ aij.bjk;
end;
{Cik....la phan tu thuoc dong i cot k}
c=[Cik]
7. DE QUY TINH aˆn
procedure Mu(a: real, n: integer)
If n:=0 then Mu(a,n):=1
else Mu(a,n):=a*Mu(a,n-1);
8. DE QUY TINH n!
procedure Giaithua(n: integer)
If n:=0 then Giaithua(n):=1
else Giaithua(n):= Giaithua(n-1)*n
SU DUNG VONG LAP
procedure giaithua(n: integer)
giaithua(n):=1;
for i:=1 to n do
giaithua(n):= giaithua(n)*i
9. DE QUY TINH UCLN(a,b) a<b
procedure UCLN(a,b: integer)
if a=0 the UCLN(a,b)=b
else UCLN(a,b)=UCLN(b mod a, a)
10. BAI TOAN THAO HA NOI
Bai toan chia lam 3 buoc sau:
Buoc 1: chuyen (n-1) đĩa từ cọc A sang cọc B, lấy cọc C làm trung gian
Bước 2: chuyển đĩa to nhất ở cọc A sang cọc C
Bước 3: chuyen (n-1) dia o coc B sang coc C
Goi Sn la so lan chuyen cua n dia giua 2 coc . Do do so lan chuyen o Buoc 1 = Buoc 2 nen ta co phuong trinh
Sn= 2 Sn-1 +1
=> Sn = 2ˆn -1
11. PHUONG PHAP SINH
procedure Generate;
Begin <xay dung cau hinh ban dau>
Stop:= false;
while not stop do
begin <dua vao cau hinh dang co>
sinh_ke_tiep;
end;
end.
sinh_ke_tiep: thu tuc sinh ra cau hinh tiep theo tu cau hinh dang co
12. LIET KE XAU NHI PHAN
Procedure Next_bit_string;
Begin c:=0
while bi:=1 do
begin bi:=0;
i:=i+1;
end;
bi:=1;
end.
13. THUAT TOAN QUAY LUI
Procedure Try(i: integer)
var j: integer;
begin
for j:=1 to ni do
if <chap nhan j> then
begin
(xac nhan xi theo j)
If i:=n then <ghi nhan 1 cau hinh>
else Try(i+1)
end;
end.
14. CONG THUC CAY
Cây có n đỉnh => có n-1 cạnh
cây m phân đầy đủ có i đỉnh trong thì n=mi +1
cây m phân đầy đủ vs n đình thì
i= n-1/m
l =[ [m - 1].n + 1 ] /m
n = [ml - 1] / [m +1]
i =[l-1] / [m-1]
Bạn đang đọc truyện trên: AzTruyen.Top