i gii chi tit c liu
I H
TIN
………………
Câu 1( 3 điểm)
1) Th liu tinh sn ) c lc cao?
2) liu tinh c l ) bit?
3) Ti sao ch s dng c liu tinh u v vic t
ch d liu ca mng dng thc t ?. Mt s ng dng
phi cn s d lii l ?
mng dng th hi
Câu 2( 3 điểm )
Gi s ta cn qup ch t dt ca c
xbng mng. Vi cp vt th tn t
v k k t p n t i th t
p t
Câu 3( 2 điểm )
Anh ( Ch mt l dng cp rp cho vic gii
quyu c th hi
i
Mã đề thi: 02
ĐỀ THI HẾT HỌC PHẦN
Môn thi: Cấu trúc dữ liệu và giải thuật; Hệ: Chính quy
Câu 1
1) C liu tinh c ng l lic
s lp i l vic s di (1 đ)
ng ng trong mt s th t
c b c t
ch c l
(1 đ)
- Ph th hi
Thí sinh không được sử dụng tài liệu, không ghi vào đề thi
CB coi thi không giải thích gì thêm và nộp lại đề thi cho phòng chức năng theo quy chế của bộ I H
ĐỀ THI HẾT HỌC PHẦN
Môn thi: Cấu trúc dữ liệu và giải thuật; Hệ: Chính quy
TIN
……………… Câu 1( 2 điểm)
quy phn thu tru
) minh ha ?
Câu 2( 3 điểm ) 3
Gi s cn qu theo mt th
t t dng cha ca mnh s dng mng. V
vii thuc p t
Thí sinh không được sử dụng tài liệu, không ghi vào đề thi
CB coi thi không giải thích gì thêm và nộp lại đề thi cho phòng chức năng theo quy chế của bộ Câu 1
quy phn thu tr hin
ch gii s ng d lin, ta gii s ng d li
a, c th g n gng hy ra suy bing
hc x ng ca chin thu tr (1 đ)
: (1 đ)
Chy chm mt gii thu
-1)!, (n-n+1) = 1! = 1.(v a)
Câu 2
+ Dng cha ca mnh: (1 đ)
Const n = <số các đỉnh tối đa trên cây>;
Type Node = Record
Info: Integer;
parent: 0 n;
End;
Tree = Array [1 n ] of Node;
Var T: Tree;
nh th k: (1 đ)
parent (T, k) := T[k].parent;
cnh th (1 đ)
Duy nh gc(i:=1), kim tra xem cha c
nu = k, kt lu, dng gii thut, nu cha cnh ting
p lng (found = true),
hoc duyt h kt luy
Câu 3
+ Dn k ca mnh: (1 đ)
TIN
……………… Câu 1( 2 điểm)
m ca gii thu quy (vit b pascal) i
t qu Gi ti sao?
Function Tinh(n,x: byte): Longint;
Begin
If n = 1 then Tinh := x
Else Tinh := n* Tinh(n-1,x);
End;
Câu 2( 4 điểm )
Gi s m cn qu, mi cn qu: H
, gia ch, chc danh . Anh(ch) hla chn mt c li
qu
Mã đề thi: 04
ĐỀ THI HẾT HỌC PHẦN
Môn thi: Cấu trúc dữ liệu và giải thuật; Hệ: Chính quy
- D li nh trong
- Thun l
- Tit ki nh nht.
Vi c lia chn. Anh(ch
1) Vit dt ca c li
2) Vit gii thut m s
3) Hin th
4) Loi b nhn tui v t rng nam: 60 tui; n: 55 tu
Câu 3( 2 điểm )
? bi mng, b
m ca tng dng ct?
Var L: List;
2) m s trong ( 1 đ)
- S dng bi ng trong u dem:= 0 ,
- S dng con tr ph M duyt t n cun
- In bi
3) Hin th : ( 1 đ)
S dng con tr ph M duyt t n cun hin
th :
4) Loi b n tui v : ( 1 đ)
n tui v , gi s v c tr bi p
b2) Loi b v
b3) Lp ln khi ht v y
- thu kin ta duyt t p:=L
dng
- loi b hc sinh v p:
a) Di chuyn con tr ph n v c p:
M:=L;
While M^.next <>p do M:=M^.next;
b) Bt, gt, gi
M^.next:=p^.next;
Dispose(p);
Câu 3
t c mt tp hp hu hn bin t thuc
t lng (0.5 đ)
i mni con tr ti
ng:
t bi mng: ( 0.5 đ)
b) t bi con tr
Ưu điểm:
- nh (Hing gi ch
t bi mng)
- C liu danh st bi con tr ng,
nh c c gii hn b
i vi c li
- n t m nhng v n dc
nhn m k tit bi
mng
Nhược điểm:
- T truy cn t i
vi mi phn t (truy cp tun t mt chiu)
- T phn t c li phn t c
- mi phn t a ch ca
I H
TIN
……………… Câu 1( 2 điểm)
m ca gii thu quy. Gi s ng s
c
Q(a,b) =
Câu 2( 3 điểm )
dng ca gii thut) c gii quyt theo m i
thu
(1 đ)
Câu 2
+ Dạng cài đặt danh sách bởi mảng: (0.5 đ)
Const n=maxlist;
Type list = record
Ele: array[1 n]of integer;
Count: 0 n;
end;
Var L: list;
tng vu cu:
1) ng c (0.5 đ)
function Trungbinh(l:list): integer;
var i, tam: integer;
Begin
for i:=1 to n do tam:= tam+L.Ele[i];
Trungbinh:=tam;
End;
2) Loi b s (1 đ)
procedure Loaibo(var L: list);
var k,i:integer; found: boolean;
Begin
found:= false;
k:=1;
while (not found)and(k<=L.count) do
if(L.Ele[k]=3) then
begin
for i:=k to L.count-1 do L.Ele[i]:=L.Ele[i+1];
L.count:= L.count -1;
b
Var T: Tree;
tc duy t c, sau:
Gi s c T, tc duy
Th tc duy t c: (0.5 đ)
Procedure Preorder(T: Tree);
Begin
Write(T^.info);
Preorder(T^.left);
Preorder(T^.right);
End;
Th tc duy t sau: (0.5 đ)
Procedure postorder(T: Tree);
Begin
Postorder(T^.left);
Postorder(T^.right);
Write(T^.info);
End;
2) Biu thc tin t , hu t
c) + Biu thc tin t: (0.5 đ)
+*34/+12b6 => Biu thi kt qu duy t c
+ Biu thc hu t: (0.5 đ)
34*+12b+6/ => Biu thi kt qu duy t sau
I H
TIN
ĐỀ THI HẾT HỌC PHẦN
Môn thi: Cấu trúc dữ liệu và giải thuật; Hệ: Chính quy
………………
Câu 1
- sung mt phn t c
thc hin mu c gi sau - Real), p ly mt phn t ra kh
c thc hin u kia (lc - Front) (0.5 đ)
- hi:
Cài đặt bởi mảng: (0.5 đ)
const n=maxqueue;
type queue= record
ele:array[1 n]of item;
L,F,count:0 n;
end;
Ưu điểm:
- truy cp nhanh, trc tin mi phn t
- thc hin
Nhược điểm:
- nh, hic g ch y
n
- B gii hn bng k tip trong b nh
- C c c
hoc thanh ghi stack
Cài đặt bởi con trỏ: (0.5 đ)
type pqueue=^nut;
nut= record
infor: item;
next:pqueue;
end;
var l,f:pqueue;
Ưu điểm:
- hin tng gi ch y nh
- C c
write(‘Nhạp Điem tong kết: ’); readln(M^.DiemTK);
insert(M,,L, R);
end;
end;
tc tr b
procedure Insert(M: doublelist, Var L, R: DoubleList);
Var
Begin
if (L=nil)and(R=nil) then
begin
M^.Lptr:=nil; M^.Rptr:=nil;
L:=M; R:=M;
end
else
begin
R^.Rptr:=M; M^.Lptr:=R; M^.Rptr:=nil; R:=M;
end;
End;
c sinh hc l (1 đ)
- S dng bim s i hc l
- S dng con tr ph M duyt t n cu
- In bi
+ Xp loi hc lc: (1 đ)
- S dng con tr p duyt t hn hc sinh cu
n hp loi hc lc cho h
cho c dnh if honh case of
+ Sp xng ln (1 đ)
s dng mp x sp xp d li
Write(M^. sbd);
P:=M;
M := M^.next;
If (M^.lop<>p^.lop) then writeln(‘Các sinh vien lop M^.lop la:’);
End;
Câu 3
- Bu thc tin t th, kh quy,
(0.5 đ)
- (0.5 đ)
I H
TIN
……………… Câu 1( 1 điểm)
quy, gii thu v mt gii thu quy?
Câu 2( 3 điểm )
i s v ci s nh
Acker(m,n) =
a) nh xem n gng vng hp suy bi
b) i sao? .
c) Vit gii thu Acker(n,m), v c nhp t
Câu 3( 4 điểm )
Hc sinh khi 12 d thi ht hc k i ng. Mn qu
p
1. dng c li
d thi. Vit dng ca c
Vy => Acker (1,3) = 5 (1 đ)
c) Vit gii thu (1 đ)
Function Acker(m,n: integer):integer;
Begin
If(m=0)then Acker:= n+1
Else
If(n=0)then Acker:=Acker(m-1,1)
Else Acker:= Acker(m-1, Acker(m,n-1));
End;
Câu 3
1) D (0.5 đ)
Type Thisinh = Record
SDB, Hoten, Lop: String;
Toan, ly, hoa, ngoaingu: real;
End;
List = ^ node;
Node = Record
Info: Sinhvien;
Next: list;
End;
Var L: list
a) Nh (1 đ)
procedure taoDS(var l:list);
var M: hocsinh, SBD: string, i: integer;;
begin
write(’nhap so bao danh của hoc sinh dau tiên, SBD = ’); readln(SBD);
while SDB<>’’ do