Câu hỏi ôn tập môn Cấu trúc dữ liệu và giảI thuật | Trường đại học kinh doanh và công nghệ Hà Nội

Giải thuật đệ quy là:1. “ Trong giải thuật đệ quy có lời gọi tới chính nó nhưng với phạm vi nhỏ hơn” 2. “ Trong giải thuật đệ quy có lời gọi tới chính nó nhưng với phạm vi lớn hơn” 3. “ Trong giải thuật đệ quy có lời gọi tới một giải thuật khác đã biết kết quả” 4. “ Trong giải thuật đệ quy có lời gọi tới chính nó”. Tài liệu giúp bạn tham  khảo, ôn tập và đạt kết quả cao. Mời đọc đón xem!

lOMoARcPSD| 48641284
1
Câu hi ôn tp môn Cu trúc
d liu và giI thut
1 / Gii thuật đệ quy là :
1. “ Trong giải thuật đệ quy có li gi tới chính nó nhưng với phm vi nh
hơn”
2. “ Trong giải thuật đệ quy có li gi tới chính nó nhưng với phm vi ln
hơn”
3. “ Trong giải thuật đệ quy có li gi ti mt gii thuật khác đã biết kết qu
4. “ Trong giải thuật đệ quy có li gi tới chính nó
2/ Cho hàm đệ qui sau:
Function Factorial(n) Begin
if n= 0 then Factorial:=1 _
else Factorial := n*Factorial(n-1);
End;
Sau mi ln gọi đệ quy thì giá tr ca n
1. “ Tăng lên 1”
2. “ Giảm đi 1”
3. “ n=0 ”
4. “ n=1 ”
3/ Cho hàm đệ qui sau:
Function Factorial(n) Begin
if n=0 then Factorial:=1
else Factorial := n*Factorial(n-1);
End;
Dòng lnh if n=0 then Factorial:=1 là:
1. “ Điều kin không thc hiện đệ quy”
2. Lp vô hn”
3. “ Điều kin dừng đệ quy
4. “ Lặp 1 ln”
4/ Hàm đệ qui sau gii bài toán gì?
Function Factorial(n) Begin
if n=0 then Factorial:=1
else Factorial := n*Factorial(n-1);
End;
1. “ Tính n^n (n mũ n).
2. “ Tính số cp th sau n tháng”
3. “ Tính giai thừa n”
4. “ Tính tích: 1*2*3*…*n”
5/ Cho hàm đệ qui sau:
Function Factorial(n)
Begin if n=0 then Factorial:=1
lOMoARcPSD| 48641284
2
else Factorial := n*Factorial(n-1); _
End;
Kết qu bng bao nhiêu khi n=4
1. “6”
2. “24”
3. “ 12”
4. “ 8”
6/ Hàm đệ qui cho kết qu thế nào?
Function Factorial(n)
Begin
Factorial := n*Factorial(n-1);
End;
1. “Tính giai thừa n”
2. “Chương trình báo lỗi”
3. “Lp vô hạn vì không có điều kin dng”
4. “ Tính số cp th sau n tháng.”
7/ Dãy s Fibonacci bt ngun t bài toán c v vic sinh sn ca các cp
thỏ. Bài toán được đặt ra như sau:
Các con th không bao gi chết.
Hai tháng sau khi ra đời mt cp th mi s sinh ra mt cp th con. Khi
đã sinh con rồi thì c mi tháng tiếp theo chúng lại sinh được mt cp con
mi.
Gi s bắt đầu t mt cp th mới ra đời thì đến tháng th 5 s có bao nhiêu
cp?
1. “3”
2. “5”
3. “10”
4. “8”
8/ Cho gii thuật đ quy sau:
Function F(n) Begin
if n<=2 then F:=1 else
F := F(n-1) + F(n-2);
End;
Dòng lệnh if n<=2 then F:=1 đóng vai trò:
1. “ Điều kin dừng đệ quy”
2. “ Điều kin không thc hiện đệ quy
3. “ Lặp vô hn”
4. “ Lặp 1 ln”
9/ Cho gii thuật đ quy sau:
Function F(n:integer):integer;
Begin
if n<=2 then F:=1
lOMoARcPSD| 48641284
3
else F:= F(n-2) + F(n-1) End;
Khi n=4 kết qu ca bài toán trên là:
1. “3”
2. “5”
3. “10”
4. “8”
10 / Đặc điểm ca gii thuật đệ quy :
1 .“ Tất c đều đúng”
2. “ Trong thủ tục đệ quy có li gọi đến chính th tục đó”
3. “ Sau mỗi ln gọi đệ quy thì kích thước của bài toán được thu nh hơn
trước”
4.“ Có một trường hợp đặc biệt, trường hp suy biến. Khi trường hp này
xy ra thì bài toán còn li s đưc gii quyết theo một cách khác”
11/ gii thuật đệ quy ca bài toán Tháp Hà Nội như sau:
Procedure Chuyen(n, A, B, C)
Begin if n=1 then chuyển đĩa t A sang C
else begin call Chuyen(n-1, A, C,
B); call Chuyen(1, A, B, C);
call Chuyen(n-1, B, A, C) ;
end;
End;
Khi n=3 có bao nhiêu bước chuyn?
1. “6 bước
2. “ 9 bước ”
3. “7 bước
4. “15 bước
12 / Danh sách tuyến tính là :
1. “ Danh sách mà quan hệ lân cn gia các phn t được xác định”
2. “ Danh sách tuyến tính là mt danh sách rng”
3. “ Danh sách tuyến tính là mt danh sách có dạng (a1, a2, ..., an)”
4. “ Danh sách dạng được lưu dưi dng mng”
13 / ưu điểm ca việc cài đặt danh sách bng mng :
1. “ Việc truy nhp vào phn t ca mảng được thc hin trc tiếp da vào
địa ch tính được (ch s), nên tốc độ nhanh và đồng đều đối vi mi phn
tử”
2. “ Có thể thay đổi s ng phn t theo ý mun ca người dùng”
3. “ Có thể b sung hoc xóa mt phn t bt k trong mảng”
4. “ Tất c c ý trên đều đúng”
14 / Danh sách tuyến tính dạng ngăn xếp là :
lOMoARcPSD| 48641284
4
1 . “Là một danh sách tuyến tính trong đó phép bổ sung mt phn t vào
ngăn xếp được thc hin một đầu, và phép loi b đưc thc hin đầu
kia.” 2. “ Là một danh sách tuyến tính trong đó phép bổ sung mt phn t
vào ngăn xếp và phép loi b mt phn t khỏi ngăn xếp luôn luôn thc hin
mt đu gọi là đỉnh.”
3. “ Là một danh sách tuyến tính trong đó phép bổ sung sung mt phn t
vào ngăn xếp được thc hin một đầu, Và phép loi b không thc hin
được.”
4. “ Là một danh sách tuyến tính trong đó phép bổ sung mt phn t vào
ngăn xếp và phép loi b mt phn t khỏi ngăn xếp luôn luôn thc hin
ti mt v trí bất kì trong danh sách.”
15 / Danh sách tuyến tính dạng ngăn xếp làm vic theo nguyên tc :
1. “ FIFO( first in first out)”
2. “ LIFO(last in first out)”
3. “ LILO(last in last out)”
4. “ FOLO( fisrt out last out)”
16/ Khi đổi mt s nguyên t h thp phân sang h nh phân thì người ta
dùng phép chia liên tiếp cho 2 và ly các s dư (là các chữ s nh phân) theo
chiều ngược li.
Cơ chế sp xếp này chính là cơ chế hot đng ca cu trúc d liu:
1. “ Hàng đợi (Queue)”
2. “ Mảng (Array)”
3. “ Ngăn xếp (Stack)”
4. “ Bản ghi (Record)”
17/ S là ngăn xếp , Phép toán thêm phn t vào ngăn xếp là Push, phép ly
ra mt phn t t ngăn xếp là POP, th tc sau làm nhim v gì?
Procedure Chuyen_doi(N);
While N <> 0 do
R := N mod 2; {tính s dư trong phép chia N cho 2}
call PUSH(S, R);
N := N div 2; {thay N bằng thương của phép chia N cho 2} end;
&
While not Empty(S) do
begin call POP(S,
R);
write(R);
end end.
1. ng dụng ngăn xếp để tính s trong phép chia N cho 2”
2. ng dụng ngăn xếp để đổi s N t cơ số 10 sang cơ số 2”
3. ng dụng ngăn xếp để thay N bằng thương của phép chia N cho 2”
4. ng dụng ngăn xếp để đưa giá trị N vào ngăn xếp và ly ra giá tr N”
lOMoARcPSD| 48641284
5
18 / định nghĩa danh sách tuyến tính Hàng đợi (Queue )
1. “ Hàng đợi là kiu danh sách tuyến tính trong đó, phép bổ sung mt
phn t đưc thc hin mt đu, gi là li sau (rear) hay lối trước (front).
2. “ Hàng đợi là kiu danh sách tuyến tính trong đó, phép b sung mt
phn t hay loi b đưc thc hin mt đu danh sách gọi là đỉnh (Top)”
3. “ Hàng đợi là kiu danh sách tuyến tính trong đó, phép bổ sung phn t
mt đu, gi là li sau (rear) và phép loi b phn t đưc thc hin đầu
kia, gi là lối trước (front)”
4. “ Là một danh sách tuyến tính trong đó phép bổ sung mt phn t
phép loi b mt phn t đưc thc hin ti mt v trí bt kì trong danh
sách”
19 / Hàng đợi còn được gi là danh sách kiu :
1. “ LIFO”
2. “ FILO”
3. “ FIFO”
4. “ LOLO”
20 / Để thêm mt đối tượng x bt k vào Stack, thao tác thường dùng là :
1. “ POP(x)”
2. “ PUSH(x)”
3. “ TOP(x)”
4. “ EMPTY(x)”
21/ Để loi b một đối tượng ra khỏi Stack, thao tác thường dùng là:
1. “ PUSH(x)”
2. “ POP(x)”
3. “ EMPTY(x)”
4. “ FULL(x)”
22 / Để biu din Stack, ta thường s dng kiu d liệu nào sau đây :
1. “ Danh sách móc nối và mng d liu”
2. “ Mảng d liu”
3. “ Danh sách móc nối”
4. “ Kiểu bản ghi”
23 / Thao tác POP(x) dùng trong Stack là đ :
1. “ Lấy phn t đầu tiên ra khỏi Stack”
2. “ Lấy mt dãy các phn t ra khỏi Stack”
3. “ Lấy mt phn t bt kì khỏi Stack” 4
4. “ Lấy mt phn t cui cùng ra khỏi đỉnh Stack”
24 / Thao tác Push(x) dùng trong Stack là đ :
1. “ Bổ sung mt phn t vào đỉnh Stack”
2. “ Bổ sung mt phn t vào đầu Stack”
3. “ Bổ sung mt phn t bất kì vào Stack
lOMoARcPSD| 48641284
6
4. “ Bổ sung mt dãy các phn t vào đỉnh Stack”
25/ Cho Stack gm 5 phn t {12, 5, 20, 23, 25}, trong đó 25 là phần t
đỉnh Stack. Để ly ra phn t th 4 trong Stack ta phi làm thế nào?
1. “ POP(23),PUSH(25)”
2. “ POP(25),POP(23)”
3. “ POP(25),PUSH(23)”
4. “ POP(25),POP(23), PUSH(25)”
26/ Cho Stack gm 5 phn t {12, 5, 20, 23, 25}, trong đó 25 là phần t
đỉnh Stack. Để ly ra phn t th 3 trong Stack ta phi làm thế nào?
1. “ POP(25), POP(23), POP(20), PUSH(25), PUSH(23)”
2. “ POP(25), POP(23), POP(20), PUSH(23), PUSH(25)”
3. “ POP(25), POP(23), POP(20)
4. “ POP(25), POP(23), PUSH(20), PUSH(25), PUSH(23)”
27/ Cho Stack gm 5 phn t {12, 5, 20, 23, 25}, trong đó 25 là phần t
đỉnh Stack. Để ly ra phn t th 5 trong Stack ta phi làm thế nào?
1. “ POP(25)”
2. “ POP(25),POP(23), PUSH(23)”
3. “ POP(25),PUSH(23)”
4. “ POP(23),PUSH(25)”
28/ Trong lưu trữ d liu kiu Stack, gii thut sau thc hin công vic gì?
Procedure F(X)
Begin T:=T+1;
S[T]:=X;
End;
1. “ Kiểm tra Stack có tràn không”
2. “ Loại b mt phân t ra khỏi Stack”
3. “ Bổ sung mt phn t vào Stack”
4. “ Kiểm tra Stack có cạn không”
29/ Trong lưu trữ d liu kiu Stack, gii thut F chính là:
Procedure F(X)
Begin T:=T+1;
S[T]:=X;
End;
1. “ TOP”
2. “ PUSH”
3. “ POP”
4. “ FULL”
lOMoARcPSD| 48641284
7
30/ Trong lưu trữ d liu kiu Stack, gii thut sau thc hin công vic gì?
Function P Begin
T:=T-1;
P:=S[T+1];
End;
1 “ Kiểm tra Stack có cạn không”
2. “ Bổ sung mt phn t vào đỉnh của Stack”
3. “ Kiểm tra Stack có tràn không”
4. . “ Loại b mt phn t đỉnh của Stack”
31/ Trong lưu trữ d liu kiu Stack, gii thut P chính là:
Function P Begin
T:=T-1;
P:=S[t+1];
End;
1. “ TOP”
2. “ PUSH”
3. “ POP”
4. “ NULL”
32/ Với đoạn mã sau, nếu n=23, trong Stack s là:
While n<>0 do begin
R:=n mod 2;
Push(R); &
n:=n div 2;
end;
1. “ 11101”
2. “ 11011”
3. “ 10111”
4. “ 10101”
33 / Với đoạn mã sau, nếu n=13, trong các phn t đưc b sung vào Stack
theo th t:
While n<>0 do begin
R:=n mod 2;
Push(R);
n:=n div 2;
end;
1. “ 11101”
2. “ 11011”
lOMoARcPSD| 48641284
8
3. “ 10111”
4. “ 10101”
34/ Với đoạn mã sau, nếu các phn t được đưa vào Stack theo thứ t : 1 1
1 0 1 thì các phn t đưc loi khi Stack theo th t nào?
1. “ 1, 1, 1, 0, 1 ”
2. “ 1, 1, 0, 1,1 ”
3. “ 1, 0, 1, 0, 1 ”
4. “ 1, 0, 1, 1,1 ”
35 / Với đoạn mã sau, nếu n=37, các phn t đưc b sung vào Stack theo
th t:
While n<>0 do begin
R:=n mod 2;
Push(R);
n:=n div 2;
end;
1. “ 10100”
2. “ 10010”
3. “ 00101”
4. “ 10100”
36/ Trong lưu trữ d liu kiu Queue (Q), gi s F con tr tr ti lối trước
ca Q, R là con tr tr ti li sau ca Q. Khi thêm mt phn t vào Queue, thì
R và F thay đổi thế nào?
1. “ F=F+1, R không thay đổi”
2. “ F không thay đổi, R=R-1”
3. “ F không thay đổi, R=R+1”
4. “ F=F-1, R không thay đổi”
37/ Trong lưu trữ d liu kiu Queue (Q), gi s F con tr tr ti lối trước
ca Q, R con tr tr ti li sau ca Q. Khi loi b mt phn t khi Queue,
thì R và F thay đổi thế nào? 1 . “ F không thay đổi, R=R-1”
2. “ F không thay đổi, R=R+1”
3. “ F=F+1, R không thay đổi”
4. “ F=F-1, R không thay đổi”
lOMoARcPSD| 48641284
9
38/ Gii thut sau thc hin vic gì?
Procedure Q(x) Begin
if R=n then R:=1 else R:=R+1;
if F=R then begin write(‘full’)
return
end ;
Q[R]:=X; if F=0
then F:=1;
End;
1 “Kiểm tra Queue có rỗng không”
2. “Loại b mt phn t khỏi Queue”
3. “Kiểm tra Queue có tràn không” 4 .
. “Bổ sung mt phn t vào
Queue”
39/ Gii thut sau thc hin vic gì?
Function Q:kiu d liu;
Begin
if F=0 then begin write(‘NULL’)
return
end;
Y:=Q[F]; if F=R
then begin
F:=R:=0;
return
end;
if F=n then F:=1
else F:=F+1;
Q:=Y;
End;
1. “ Kiểm tra Queue có rỗng không”
2. “ Bổ sung mt phn t vào Queue”
3. “ Kiểm tra Queue có tràn không”
4. “ Loại b mt phn t khi Queue”
40/ Gii thut sau thc hin vic gì?
Function P(l:ds): boolean; Begin
P:= (l.last =0);
End;
1 .“ Làm rỗng danh sách”
lOMoARcPSD| 48641284
10
2 .“ Kiểm tra danh sách có rỗng không”
3 .“ Cho phần t cui cùng trong danh sách bằng 0”
4 .“ Không có đáp án nào đúng.”
41/ Gii thut sau thc hin vic gì?
Procedure P( l:ds);
Begin
l.last := 0;
End;
42/ Gii thut sau thc hin vic gì?
Procedure F(x,P: integer);
Begin for i:= (l.last +1) downto (P+1)
do
l.s[i]:=l.s[i-1];
l.s[P]:=x;
l.last:=l.last + 1;
End;
43/ Gii thut sau thc hin vic gì?
Procedure F(P: integer);
Begin
for i:= P to (l.last -1) do
l.s[i]:=l.s[i+1];
l.last:=l.last -1;
End;
44 / Trong biu din d liệu dưới dng cây, cp ca cây :
1. “ Tổng s t trên cây
2. “ Cấp cao nht của nút lá”
3. “ Cấp cao nht ca nút gc”
4. “ Cấp cao nht ca một nút trên cây”
45 / Trong biu din d liệu dưới dng cây, nút có cp bng 0 gi là :
1. “ Nút gốc”
2. “ Nút lá”
3. “ Nút trung gian”
4. “ Không có đáp án nào đúng
46 / Trong biu din d liệu dưới dng cây, nút lá là nút có
lOMoARcPSD| 48641284
11
1. “Cp bằng 0 ”
2. “Cp bằng 1 ”
3. “ Có bậc khác không” 4 . “ Không có đáp án nào đúng”
47 / Mi nút trong cây có tối đa :
1. “ 2 nút con”
2. “ Nhiều nút con”
3. “ 3 nút con”
4. “ 1 nút con”
48 / Khi lưu trữy nh phân dưới dng mng, nếu v trí ca nút cha trong
mng là i thì v trí ca nút con trái là:
1. “ 2*i + 1”
2. “ 2*i”
3. “ i+1”
4. “ i-1”
49 / Khi lưu trữy nh phân dưới dng mng, nếu v trí ca nút cha trong
mng là i thì v tí ca nút con phi là:
1. “2*i”
2. “2*i + 1”
3. “ i+1”
4. “ i-1”
50 / Khi lưu trữ cây nh phân dưới dng mng, nếu v trí ca nút cha trong
mng là 3 thì v trí tương ứng ca nút con s là:
1 .“ 5 ”
2 .“ 9”
3 .“ 7”
4 .” 6”
51 / Khi lưu trữy nh phân dưới dng mng, nếu v trí ca nút cha trong
mng là 3 thì v trí tương ứng ca nút con trái s là:
1 .“ 5 và 6”
2 .“ 4 và 5”
3 .“ 6 và 7”
lOMoARcPSD| 48641284
12
4 .”3 và 4”
52 / Khi lưu trữy nh phân dưới dng mng, nếu v trí ca nút cha trong
mng là 3 thì v trí tương ứng ca nút con phi s:
1 .“ 5”
2 .“ 9”
3 .“ 7”
4 .” 6”
53 / Duyt cây nh phân theo th t trước được thc hin theo th t :
1 .“ Thăm gốc, duyt cây con trái theo th t trước, duyt cây con phi theo
th t trước.”
2. “ Thăm gốc trước, duyt cây con trái theo th t gia, duyt cây con
phi theo th t sau.”
3. “ Duyệt cây con trái theo th t trước, thăm gốc gia, duyt cây con
phi theo th t sau.”
4. “ Duyệt cây con trái theo th t sau, thăm gốc trước, duyt cây con
phi theo th t sau.”
54 / Duyt cây nh phân theo th t giữa được thc hin theo th t :
1. “ Duyệt cây con trái theo th t giữa, thăm gốc, duyt cây con phi
theo th t giữa.”
2. “ Thăm gốc trước, duyt cây con trái theo th t gia, duyt cây con
phi theo th t sau.”
3. “ Duyệt cây con trái theo th t trước, thăm gốc gia, duyt cây con
phi theo th t sau.”
4. “ Thăm gốc, duyt cây con trái theo th t gia, duyt cây con phi
theo th t giữa.”
55 / Duyt cây nh phân theo th t sau được thc hin theo th t :
1. “ Duyệt cây con trái theo th t giữa, thăm gốc, duyt cây con phi
theo th t giữa.”
lOMoARcPSD| 48641284
13
2. “ Thăm gốc trước, duyt cây con trái theo th t gia, duyt cây con
phi theo th t sau.”
3. “ Duyệt cây con trái theo th t trước, thăm gốc gia, duyt cây con
phi theo th t sau.”
4. “ Thăm gốc, duyt cây con trái theo th t gia, duyt cây con phi
theo th t giữa.”
Nhóm B
1 / ý tưởng phương pháp sắp xếp chọn tăng dần (select sort )
1. “ Lần lượt ly phn t ca danh sách chèn v trí thích hp ca nó trong
dãy.”
2. “ Chọn phn t bé nht xếp vào v trí th nht bằng cách đổi ch phn
t bé nht vi phn t th nhất. Tương tự đối vi phn t nh th hai,ba...”
3. “ Bắt đầu t cuối dãy đến đầu dãy, ta lần lượt so sánh hai phn t kế tiếp
nhau, nếu phn t nào bé hơn đưc cho lên v trí trên.”
4 . “ Phân đoạn dãy thành nhiu dãy con và lần lượt trn hai dãy con thành
dãy lớn hơn, cho đến khi thu được dãy ban đầu đã được sp xếp.”
2 / ý tưởng phương pháp sắp xếp ni bt (bubble sort) là :
1. “ Bắt đu t cuối dãy đến đầu dãy, lần lượt so sánh hai phn t kế tiếp
nhau, nếu phn t nào nh hơn đưc đng v trí trên.”
2. “ Lần lượt ly phn t ca danh sách chèn v trí thích hp ca nó trong
dãy bằng cách đẩy các phn t lớn hơn xuống.”
3. “ Chọn phn t bé nht xếp vào v trí th nht bằng cách đổi ch phn
t bé nht vi phn t th nhất. Tương tự đối vi phn t nh th hai,ba...”
4 . “ Phân đoạn dãy thành nhiu dãy con và lần lượt trn hai dãy con thành
dãy lớn hơn, cho đến khi thu được dãy ban đầu đã được sp xếp.”
3 / ý tưởng phương pháp sắp xếp chèn (insertion sort) là :
lOMoARcPSD| 48641284
14
1. “ Bắt đu t cuối dãy đến đầu dãy, ta lần lượt so sánh hai phn t kế
tiếp nhau, nếu phn t nào nh hơn được đứng v trí trên.”
2. “ Lần lượt ly phn t ca danh sách chèn v trí thích hp ca nó trong
dãy bng cách đẩy các phn t lớn hơn xuống.”
3. “ Chọn phn t bé nht xếp vào v trí th nht bằng cách đổi ch phn
t bé nht vi phn t th nhất. Tương tự đối vi phn t nh th hai,ba...”
4 . “ Phân đoạn dãy thành nhiu dãy con và lần lượt trn hai dãy con thành
dãy lớn hơn, cho đến khi thu được dãy ban đầu đã được sp xếp.”
4 / ý tưởng phương pháp sắp xếp nhanh (Quick sort) là :
1 . Chọn phn t nht xếp vào v trí th nht bằng cách đổi ch phn t
nht vi phn t th nhấ; Tương tự đối vi phn t nh th hai,ba...” 2.
Bắt đầu t cuối dãy đến đầu dãy, ta lần lượt so sánh hai phn t kế tiếp nhau,
nếu phn t nào nh hơn được đứng v trí trên.”
3. “ Lần lượt chia dãy phn t thành hai dãy con bi mt phn t khoá
(dãy con trước khoá gm các phn t nh hơn khoá và dãy còn lại gm các
phn t lớn hơn khoá).”
4. “ Phân đoạn dãy thành nhiu dãy con và lần lượt trn hai dãy con
thành dãy lớn hơn, cho đến khi thu được dãy ban đầu đã được sp xếp.”
5 / Phương pháp sắp xếp nhanh (Quick sort) chính là phương pháp :
1. “ Chèn”
2. “ Trộn”
3. “ Phân đoạn”
4. “ Vun đống”
6 / ý tưởng phương pháp sắp xếp Trn (Merge sort) là :
1. “ Phân đoạn dãy thành nhiu dãy con và lần lượt trn hai dãy con
thành dãy lớn hơn, cho đến khi thu được dãy ban đầu đã được sp xếp”
2. “ Bắt đu t cuối dãy đến đầu dãy, ta lần lượt so sánh hai phn t kế
tiếp nhau, nếu phn t nào nh hơn được đứng v trí trên”
lOMoARcPSD| 48641284
15
3. “ Chọn phn t bé nht xếp vào v trí th nht bằng cách đổi ch phn
t bé nht vi phn t th nhất; Tương tự đối vi phn t nh th hai,ba...”
4. “ Lần lượt chia dãy phn t thành hai dãy con bi mt phn t khoá (dãy
con trước khoá gm các phn t nh hơn khoá và dãy còn lại gm các phn
t lớn hơn khoá)”
7 / ý tưởng phương pháp sắp xếp vun đống (Heap sort) là :
1 . “ Tạo đống cho cây nh phân (cây nh phân đã được sp xếp gim dần).” 2
. “ Lần lượt tạo đống cho cây nh phân (phn t gc có giá tr ln nht) và loi
phn t gc ra khỏi cây đưa vào dãy sắp xếp.”
3. “ Bắt đu t cuối dãy đến đầu dãy, ta lần lượt so sánh hai phn t kế
tiếp nhau, nếu phn t nào nh hơn được đứng v trí trên.”
4. “ Lần lượt chia dãy phn t thành hai dãy con bi mt phn t khoá
(dãy con trước khoá gm các phn t nh hơn khoá và dãy còn lại gm các
phn t lớn hơn khoá).”
8 / Cơ chế heap trong sp xếp vun đống là
1. “ Cây nhị phân đầy đủ vi tính cht giá tr ca nút cha luôn lớn hơn giá
tr hai nút con.”
2. “ Cây nhị phân hoàn chnh vi tính cht giá tr ca nút cha ln luôn ln
hơn giá trị các nút trong cây con trái và nh hơn giá trị các nút trong cây con
phải.”
3. “ Cây nh phân hoàn chnh vi tính cht giá tr ca nút cha luôn lớn hơn
giá tr hai nút con.”
4. “ Cây nhị phân đầy đủ vi tính cht giá tr ca nút cha ln luôn lớn hơn
giá tr các nút trong cây con trái và nh hơn giá trịc nút trong cây con
phải.”
10 / Tư tưởng ca gii thut tìm kiếm nh phân :
1. “ Tìm kiếm da vào cây nh tìm kiếm.”
2. “ So sánh X lần lượt vi các phn t th nht, th hai,... của dãy cho đến
khi gp phn t khoá cần tìm.”
lOMoARcPSD| 48641284
16
3. “ Lần lượt chia dãy thành hai dãy con da vào phn t khoá, sau đó thực
hin vic tìm kiếm trên hai đoạn đã chia.”
4. “ Tại mỗi bước tiến hành so sánh X vi phn t gia ca dãy,Da vào
c so sánh này quyết đnh gii hn dãy tìm kiếm nm na trên, hay
nửa dưới ca dãy hiện hành.”
11 / Tư tưởng ca gii thut tìm kiếm tun t :
1.“ So sánh X lần lượt vi các phn t th nht, th hai,... của dãy cho đến
khi gp phn t khoá cần tìm.”
2. Tại mỗi bước tiến hành so sánh X vi phn t gia ca dãy.Da vào
c so sánh này quyết định gii hn dãy tìm kiếm nm na trên, hay na
i ca dãy hiện hành.”
3. Lần t chia dãy thành hai dãy con da vào phn t khoá, sau đó thực
hin vic tìm kiếm trên hai đoạn đã chia.
4. “ Tìm kiếm da vào cây nh tìm kiếm: Nếu giá tr cn tìm nh hơn gốc thì
thc hin tìm kiếm trên cây con trái, ngược li ta vic tìm kiếm được thc hin
trên cây con phải.”
12 / Tư tưởng ca gii thut tìm kiếm trên cây nh phân tìm kiếm :
1. “ Lần lượt chia dãy thành hai dãy con da vào phn t khoá, sau đó
thc hin vic tìm kiếm trên hai đoạn đã chia.”
2. “ So sánh X lần lượt vi các phn t th nht, th hai,... ca dãy cho
đến khi gp phn t có khoá cần tìm.
3. “ Tại mỗi bước tiến hành so sánh X vi phn t gia ca dãy,Da
vào bước so sánh này quyết đnh gii hn dãy tìm kiếm nm na trên, hay
nửa dưới ca dãy hin hành.”
4. “ Tìm kiếm da vào cây nh phân tìm kiếm: Nếu giá tr cn tìm nh hơn
gc thì thc hin tìm kiếm trên cây con trái, nc li tìm kiếm được thc
hin trên cây con phải.”
13 / Cây nh phân tìm kiếm là :
1. “ Cây nhị phân tho tính chất heap”
2. Cây nhị phân mà mỗi nút trong cây đều tho tính cht: giá tr ca nút cha
nh hơn mọi nút trên cây con phi và ln hơn mọi nút trên cây con trái ca
nó.”
3. Cây nhị phân mà mỗi nút trong cây đều tho tính cht: giá tr ca nút cha
lớn hơn giá trị của hai nút con.” 4 . “ Là cây nhị phân đầy đủ.”
14 / Trong các gii thut sp xếp, gii thut nào áp dng phương pháp Chia
để tr?
1. “ Quick sort, Heap sort”
2. “ Quick sort, Merge sort”
lOMoARcPSD| 48641284
17
3. “ Quick sort, Bubble sort”
4. “ Qucick sort, Insert sort”
15/ Th tc sau áp dng gii thut sp xếp nào?
Procedure F
Begin
For i:=1 to (n-1) do
For j:=n downto (i+1) do _
if a[j] < a[j-1] then
begin tg:=a[j]; a[j]:=a[j-1]; a[j-1]:=tg; end;
End;
1. “ Select sort”
2. “ Bubble sort”
3. “ Insert sort”
4. “ Merge sort”
16/ Th tc sau áp dng gii thut sp xếp nào?
Procedure F
Begin a[0]:=- ∞;
for i:=2 to n do
begin x:=a[i]; j:=i-1;
while x<a[j] do begin a[j+1]:=a[j]; j:=j-1;
end; a[j+1]:=x;
end;
End;
1. “ Insert sort”
2. “ Select sort”
3. “ Bubble sort”
4. “ Merge sort”
17/ Th tc sau áp dng gii thut sp xếp nào?
Procedure F(X,b,m,n,Z)
Begin
For i:=1 to n-1 do
Begin m:=i; for j:=i+1 to n do if a[j]
< a[m] then m:=j;
if m <> i then
Begin
X:= a[i]; a[i]:= a[m]; a[m]:= X;
lOMoARcPSD| 48641284
18
End;
End;
End;
1. Insert sort”
2. “ Select sort”
3. “ Bubble sort”
4. “ Merge sort”
18/ Th tc sau áp dng gii thut sp xếp nào?
Procedure F(a, t, s);
Begin B:=
true;
if t<s then begin i:=t; j:=s+1; key:=a[t];
while b do begin _ i:=i+1; while
a[i]<=key do i:=i+1;
j:=j -1; while a[j]>=key do j:=j-1;
if i<j then
begin tg:=a[i]; a[i]:=a[j]; a[j]:=tg; end
else b:=false; end;
tg:=a[t]; a[t]:=a[j]; a[j]:=tg;
call F(a, t,j-1); cal F(a,
j+1,s);
end;
End;
1. “ Quick sort”
2. “ Merge sort”
3. “ Bubble sort”
4. “ Insert sort”
19 / Cho dãy s {6 1 3 0 5 7 9 2 8 4}. áp dụng phương pháp sp xếp la
chn (Select sort) sau ln lặp đầu tiên ca gii thut ta có kết qu: {0 1 3 6 5
7 9 2 8 4}. Dãy s thu được sau ln lp th hai là :
1. “ {0 1 2 3 4 5 6 7 8 9}”
2. “ {0 1 2 6 5 7 9 3 8 4}”
3. “ {0 1 2 6 5 7 9 3 4 8}”
4. “ {0 1 3 6 5 7 9 2 8 4}”
20 / Cho dãy s {6 1 3 0 5 7 9 2 8 4}. áp dụng phương pháp sp xếp la
chn (Select sort) sau ln lặp đầu tiên ca gii thut ta có kết qu: {0 1 3 6 5
7 9 2 8 4}. Dãy s thu được sau ln lp th ba là :
lOMoARcPSD| 48641284
19
1 “ {0 1 2 6 5 7 9 3 4 8}”
2. “ {0 1 2 3 6 5 7 9 8 4}”
3. . “ {0 1 2 6 5 7 9 3 8 4}”
4. “ {0 1 2 3 4 5 6 7 8 9}
21 / Cho dãy s {6 1 3 0 5 7 9 2 8 4}. áp dụng phương pháp sp xếp la
chn (Select sort) sau ln lặp đầu tiên ca gii thut ta có kết qu: {0 1 3 6 5
7 9 2 8 4}. Dãy s thu được sau ln lp th tư là :
1 . “ {0 1 2 3 6 5 7 9 8 4}”
2 .“ {0 1 2 3 5 7 9 6 8 4}”
3. “ {0 1 2 3 5 7 9 4 8 6}”
4. “ {0 1 2 3 4 5 6 7 8 9}”
22 / Cho dãy s {6 1 3 0 5 7 9 2 8 4}. áp dụng phương pháp sắp xếp la
chn (Select sort) sau ln lặp đầu tiên ca gii thut ta có kết qu: {0 1 3 6 5
7 9 2 8 4}. Dãy s thu được sau ln lp th năm là :
1. “ {0 1 2 3 4 5 6 7 8 9}”
2. “ {0 1 2 3 6 5 7 9 8 4}”
3. “ {0 1 2 3 5 7 9 4 8 6}”
4. “ {0 1 2 3 4 7 9 6 8 5}”
23 / Cho dãy s {6 1 3 0 5 7 9 2 8 4}. áp dụng phương pháp sp xếp la
chn (Select sort) sau ln lặp đầu tiên ca gii thut ta có kết qu: {0 1 3 6 5
7 9 2 8 4}. Dãy s thu được sau ln lp th sáu là :
1. “ {0 1 2 3 4 5 6 7 8 9}”
2. “ {0 1 2 3 4 7 9 6 8 5}”
3. “ {0 1 2 3 4 5 6 9 8 7}”
4. “ {0 1 2 3 4 5 9 6 8 7}”
24 / Cho dãy s {6 1 3 0 5 7 9 2 8 4}. áp dụng phương pháp sp xếp la
chn (Select sort) sau ln lặp đầu tiên ca gii thut ta có kết qu: {0 1 3 6 5
7 9 2 8 4}. Dãy s thu được sau ln lp th by là :
1. “{0 1 2 3 4 5 9 6 8 7}”
2. “{0 1 2 3 4 5 9 6 8 7}”
3. “ {0 1 2 3 4 5 6 9 8 7}”
4. “ {0 1 2 3 4 5 6 7 8 9}”
lOMoARcPSD| 48641284
20
25 / Cho dãy s {6 1 3 0 5 7 9 2 8 4}. áp dụng phương pháp sắp xếp
la chọn (Select sort) tăng dần, sau ln lặp đầu tiên ca gii thut ta có kết
qu:
{0 1 3 6 5 7 9 2 8 4}. Dãy s thu được sau ln lp th tám là :
1. “ {0 1 2 3 4 5 6 7 8 9}”
2. “ {0 1 2 3 4 5 9 6 8 7}”
3. “ {0 1 2 3 4 5 9 6 8 7}”
4. “ {0 1 2 3 4 5 6 9 8 7}”
26/ Cho dãy s {4 7 0 9 2 5 3 1 8 6}. áp dụng phương pháp sắp xếp ni
bt (Bubble sort) sau ln lặp đầu tiên ca gii thut ta có kết qu:{0 4 7 1 9
2 5 3 6 8}. Dãy s thu được sau ln lp th hai là :
1. “ {0 4 7 1 9 2 5 3 6 8}”
2. {0 1 4 7 2 9 3 5 6 8}”
3. “ {0 1 2 4 7 3 9 5 6 8}”
4. “ {0 1 2 3 4 7 5 9 6 8}”
27/ Cho dãy s {4 7 0 9 2 5 3 1 8 6}. áp dụng phương pháp sắp xếp ni
bt (Bubble sort) sau ln lặp đầu tiên ca gii thut ta có kết qu:{0 4 7 1 9
2 5 3 6 8}. Dãy s thu được sau ln lp th ba là :
1. “ {0 1 4 7 2 9 3 5 6 8}”
2. “ {0 4 7 1 9 2 5 3 6 8}”
3. “ {0 1 2 4 7 3 9 5 6 8}”
4. “ {0 1 2 3 4 7 5 9 6 8}”
28/ Cho dãy s {4 7 0 9 2 5 3 1 8 6}. áp dng phương pháp sắp xếp ni
bt (Bubble sort) sau ln lặp đầu tiên ca gii thut ta có kết qu:{0 4 7 1 9
2 5 3 6 8}. Dãy s thu được sau ln lp th bn là :
1. “ {0 1 2 3 4 7 9 5 6 8}”
2. “ {0 1 2 4 7 3 9 5 6 8}”
3. “ {0 1 4 7 2 9 3 5 6 8}”
4. “ {0 1 2 3 4 7 5 9 6 8}”
29/ Cho dãy s {4 7 0 9 2 5 3 1 8 6}. áp dụng phương pháp sắp xếp ni
bt (Bubble sort) sau ln lặp đầu tiên ca gii thut ta có kết qu:{0 4 7 1 9
2 5 3 6 8}. Dãy s thu đưc sau ln lp th năm là :
1. “ {0 1 2 4 7 3 9 5 6 8}”
| 1/43

Preview text:

lOMoAR cPSD| 48641284
Câu hỏi ôn tập môn Cấu trúc
dữ liệu và giảI thuật
1 / Giải thuật đệ quy là :
1. “ Trong giải thuật đệ quy có lời gọi tới chính nó nhưng với phạm vi nhỏ hơn”
2. “ Trong giải thuật đệ quy có lời gọi tới chính nó nhưng với phạm vi lớn hơn”
3. “ Trong giải thuật đệ quy có lời gọi tới một giải thuật khác đã biết kết quả”
4. “ Trong giải thuật đệ quy có lời gọi tới chính nó” 2/ Cho hàm đệ qui sau: Function Factorial(n) Begin if n= 0 then Factorial:=1 _
else Factorial := n*Factorial(n-1); End;
Sau mỗi lần gọi đệ quy thì giá trị của n là 1. “ Tăng lên 1” 2. “ Giảm đi 1” 3. “ n=0 ” 4. “ n=1 ” 3/ Cho hàm đệ qui sau: Function Factorial(n) Begin if n=0 then Factorial:=1
else Factorial := n*Factorial(n-1); End;
Dòng lệnh if n=0 then Factorial:=1 là:
1. “ Điều kiện không thực hiện đệ quy” 2. “ Lặp vô hạn”
3. “ Điều kiện dừng đệ quy” 4. “ Lặp 1 lần”
4/ Hàm đệ qui sau giải bài toán gì? Function Factorial(n) Begin if n=0 then Factorial:=1
else Factorial := n*Factorial(n-1); End;
1. “ Tính n^n (n mũ n).”
2. “ Tính số cặp thỏ sau n tháng” 3. “ Tính giai thừa n”
4. “ Tính tích: 1*2*3*…*n” 5/ Cho hàm đệ qui sau: Function Factorial(n)
Begin if n=0 then Factorial:=1 1 lOMoAR cPSD| 48641284
else Factorial := n*Factorial(n-1); _ End;
Kết quả bằng bao nhiêu khi n=4 1. “6” 2. “24” 3. “ 12” 4. “ 8”
6/ Hàm đệ qui cho kết quả thế nào? Function Factorial(n) Begin
Factorial := n*Factorial(n-1); End; 1. “Tính giai thừa n”
2. “Chương trình báo lỗi”
3. “Lặp vô hạn vì không có điều kiện dừng”
4. “ Tính số cặp thỏ sau n tháng.”
7/ Dãy số Fibonacci bắt nguồn từ bài toán cổ về việc sinh sản của các cặp
thỏ. Bài toán được đặt ra như sau:
Các con thỏ không bao giờ chết.
Hai tháng sau khi ra đời một cặp thỏ mới sẽ sinh ra một cặp thỏ con. Khi
đã sinh con rồi thì cứ mỗi tháng tiếp theo chúng lại sinh được một cặp con mới.
Giả sử bắt đầu từ một cặp thỏ mới ra đời thì đến tháng thứ 5 sẽ có bao nhiêu cặp? 1. “3” 2. “5” 3. “10” 4. “8”
8/ Cho giải thuật đệ quy sau: Function F(n) Begin if n<=2 then F:=1 else F := F(n-1) + F(n-2); End;
Dòng lệnh if n<=2 then F:=1 đóng vai trò:
1. “ Điều kiện dừng đệ quy”
2. “ Điều kiện không thực hiện đệ quy” 3. “ Lặp vô hạn” 4. “ Lặp 1 lần”
9/ Cho giải thuật đệ quy sau:
Function F(n:integer):integer; Begin if n<=2 then F:=1 2 lOMoAR cPSD| 48641284
else F:= F(n-2) + F(n-1) End;
Khi n=4 kết quả của bài toán trên là: 1. “3” 2. “5” 3. “10” 4. “8”
10 / Đặc điểm của giải thuật đệ quy :
1 .“ Tất cả đều đúng”
2. “ Trong thủ tục đệ quy có lời gọi đến chính thủ tục đó”
3. “ Sau mỗi lần gọi đệ quy thì kích thước của bài toán được thu nhỏ hơn trước”
4.“ Có một trường hợp đặc biệt, trường hợp suy biến. Khi trường hợp này
xảy ra thì bài toán còn lại sẽ được giải quyết theo một cách khác”
11/ giải thuật đệ quy của bài toán Tháp Hà Nội như sau: Procedure Chuyen(n, A, B, C)
Begin if n=1 then chuyển đĩa từ A sang C
else begin call Chuyen(n-1, A, C, B); call Chuyen(1, A, B, C); call Chuyen(n-1, B, A, C) ; end; End;
Khi n=3 có bao nhiêu bước chuyển? 1. “6 bước ” 2. “ 9 bước ” 3. “7 bước ” 4. “15 bước ”
12 / Danh sách tuyến tính là :
1. “ Danh sách mà quan hệ lân cận giữa các phần tử được xác định”
2. “ Danh sách tuyến tính là một danh sách rỗng”
3. “ Danh sách tuyến tính là một danh sách có dạng (a1, a2, ..., an)”
4. “ Danh sách dạng được lưu dưới dạng mảng”
13 / ưu điểm của việc cài đặt danh sách bằng mảng :
1. “ Việc truy nhập vào phần tử của mảng được thực hiện trực tiếp dựa vào
địa chỉ tính được (chỉ số), nên tốc độ nhanh và đồng đều đối với mọi phần tử”
2. “ Có thể thay đổi số lượng phần tử theo ý muốn của người dùng”
3. “ Có thể bổ sung hoặc xóa một phần tử bất kỳ trong mảng”
4. “ Tất cả các ý trên đều đúng”
14 / Danh sách tuyến tính dạng ngăn xếp là : 3 lOMoAR cPSD| 48641284
1 . “Là một danh sách tuyến tính trong đó phép bổ sung một phần tử vào
ngăn xếp được thực hiện ở một đầu, và phép loại bỏ được thực hiện ở đầu
kia.” 2. “ Là một danh sách tuyến tính trong đó phép bổ sung một phần tử
vào ngăn xếp và phép loại bỏ một phần tử khỏi ngăn xếp luôn luôn thực hiện
ở một đầu gọi là đỉnh.” 3.
“ Là một danh sách tuyến tính trong đó phép bổ sung sung một phần tử
vào ngăn xếp được thực hiện ở một đầu, Và phép loại bỏ không thực hiện được.” 4.
“ Là một danh sách tuyến tính trong đó phép bổ sung một phần tử vào
ngăn xếp và phép loại bỏ một phần tử khỏi ngăn xếp luôn luôn thực hiện ở
tại một vị trí bất kì trong danh sách.”
15 / Danh sách tuyến tính dạng ngăn xếp làm việc theo nguyên tắc :
1. “ FIFO( first in first out)”
2. “ LIFO(last in first out)”
3. “ LILO(last in last out)”
4. “ FOLO( fisrt out last out)”
16/ Khi đổi một số nguyên từ hệ thập phân sang hệ nhị phân thì người ta
dùng phép chia liên tiếp cho 2 và lấy các số dư (là các chữ số nhị phân) theo chiều ngược lại.
Cơ chế sắp xếp này chính là cơ chế hoạt động của cấu trúc dữ liệu:
1. “ Hàng đợi (Queue)” 2. “ Mảng (Array)” 3. “ Ngăn xếp (Stack)” 4. “ Bản ghi (Record)”
17/ S là ngăn xếp , Phép toán thêm phần tử vào ngăn xếp là Push, phép lấy
ra một phần tử từ ngăn xếp là POP, thủ tục sau làm nhiệm vụ gì? Procedure Chuyen_doi(N); While N <> 0 do
R := N mod 2; {tính số dư trong phép chia N cho 2} call PUSH(S, R);
N := N div 2; {thay N bằng thương của phép chia N cho 2} end; & While not Empty(S) do begin call POP(S, R); write(R); end end.
1. “ ứng dụng ngăn xếp để tính số dư trong phép chia N cho 2”
2. “ ứng dụng ngăn xếp để đổi số N từ cơ số 10 sang cơ số 2”
3. “ ứng dụng ngăn xếp để thay N bằng thương của phép chia N cho 2”
4. “ ứng dụng ngăn xếp để đưa giá trị N vào ngăn xếp và lấy ra giá trị N” 4 lOMoAR cPSD| 48641284
18 / định nghĩa danh sách tuyến tính Hàng đợi (Queue ) 1.
“ Hàng đợi là kiểu danh sách tuyến tính trong đó, phép bổ sung một
phần tử được thực hiện ở một đầu, gọi là lối sau (rear) hay lối trước (front). 2.
“ Hàng đợi là kiểu danh sách tuyến tính trong đó, phép bổ sung một
phần tử hay loại bỏ được thực hiện ở một đầu danh sách gọi là đỉnh (Top)” 3.
“ Hàng đợi là kiểu danh sách tuyến tính trong đó, phép bổ sung phần tử
ở một đầu, gọi là lối sau (rear) và phép loại bỏ phần tử được thực hiện ở đầu
kia, gọi là lối trước (front)” 4.
“ Là một danh sách tuyến tính trong đó phép bổ sung một phần tử và
phép loại bỏ một phần tử được thực hiện ở tại một vị trí bất kì trong danh sách”
19 / Hàng đợi còn được gọi là danh sách kiểu : 1. “ LIFO” 2. “ FILO” 3. “ FIFO” 4. “ LOLO”
20 / Để thêm một đối tượng x bất kỳ vào Stack, thao tác thường dùng là : 1. “ POP(x)” 2. “ PUSH(x)” 3. “ TOP(x)” 4. “ EMPTY(x)”
21/ Để loại bỏ một đối tượng ra khỏi Stack, thao tác thường dùng là: 1. “ PUSH(x)” 2. “ POP(x)” 3. “ EMPTY(x)” 4. “ FULL(x)”
22 / Để biểu diễn Stack, ta thường sử dụng kiểu dữ liệu nào sau đây :
1. “ Danh sách móc nối và mảng dữ liệu” 2. “ Mảng dữ liệu”
3. “ Danh sách móc nối” 4. “ Kiểu bản ghi”
23 / Thao tác POP(x) dùng trong Stack là để :
1. “ Lấy phần tử đầu tiên ra khỏi Stack”
2. “ Lấy một dãy các phần tử ra khỏi Stack”
3. “ Lấy một phần tử bất kì khỏi Stack” 4
4. “ Lấy một phần tử cuối cùng ra khỏi đỉnh Stack”
24 / Thao tác Push(x) dùng trong Stack là để :
1. “ Bổ sung một phần tử vào đỉnh Stack”
2. “ Bổ sung một phần tử vào đầu Stack”
3. “ Bổ sung một phần tử bất kì vào Stack” 5 lOMoAR cPSD| 48641284
4. “ Bổ sung một dãy các phần tử vào đỉnh Stack”
25/ Cho Stack gồm 5 phần tử {12, 5, 20, 23, 25}, trong đó 25 là phần tử ở
đỉnh Stack. Để lấy ra phần tử thứ 4 trong Stack ta phải làm thế nào? 1. “ POP(23),PUSH(25)” 2. “ POP(25),POP(23)” 3. “ POP(25),PUSH(23)”
4. “ POP(25),POP(23), PUSH(25)”
26/ Cho Stack gồm 5 phần tử {12, 5, 20, 23, 25}, trong đó 25 là phần tử ở
đỉnh Stack. Để lấy ra phần tử thứ 3 trong Stack ta phải làm thế nào?
1. “ POP(25), POP(23), POP(20), PUSH(25), PUSH(23)”
2. “ POP(25), POP(23), POP(20), PUSH(23), PUSH(25)”
3. “ POP(25), POP(23), POP(20)”
4. “ POP(25), POP(23), PUSH(20), PUSH(25), PUSH(23)”
27/ Cho Stack gồm 5 phần tử {12, 5, 20, 23, 25}, trong đó 25 là phần tử ở
đỉnh Stack. Để lấy ra phần tử thứ 5 trong Stack ta phải làm thế nào? 1. “ POP(25)”
2. “ POP(25),POP(23), PUSH(23)” 3. “ POP(25),PUSH(23)” 4. “ POP(23),PUSH(25)”
28/ Trong lưu trữ dữ liệu kiểu Stack, giải thuật sau thực hiện công việc gì? Procedure F(X) Begin T:=T+1; S[T]:=X; End;
1. “ Kiểm tra Stack có tràn không”
2. “ Loại bỏ một phân tử ra khỏi Stack”
3. “ Bổ sung một phần tử vào Stack”
4. “ Kiểm tra Stack có cạn không”
29/ Trong lưu trữ dữ liệu kiểu Stack, giải thuật F chính là: Procedure F(X) Begin T:=T+1; S[T]:=X; End; 1. “ TOP” 2. “ PUSH” 3. “ POP” 4. “ FULL” 6 lOMoAR cPSD| 48641284
30/ Trong lưu trữ dữ liệu kiểu Stack, giải thuật sau thực hiện công việc gì? Function P Begin T:=T-1; P:=S[T+1]; End;
1 “ Kiểm tra Stack có cạn không”
2. “ Bổ sung một phần tử vào đỉnh của Stack”
3. “ Kiểm tra Stack có tràn không”
4. . “ Loại bỏ một phần tử ở đỉnh của Stack”
31/ Trong lưu trữ dữ liệu kiểu Stack, giải thuật P chính là: Function P Begin T:=T-1; P:=S[t+1]; End; 1. “ TOP” 2. “ PUSH” 3. “ POP” 4. “ NULL”
32/ Với đoạn mã sau, nếu n=23, trong Stack sẽ là: While n<>0 do begin R:=n mod 2; Push(R); & n:=n div 2; end; 1. “ 11101” 2. “ 11011” 3. “ 10111” 4. “ 10101”
33 / Với đoạn mã sau, nếu n=13, trong các phần tử được bổ sung vào Stack theo thứ tự: While n<>0 do begin R:=n mod 2; Push(R); n:=n div 2; end; 1. “ 11101” 2. “ 11011” 7 lOMoAR cPSD| 48641284 3. “ 10111” 4. “ 10101”
34/ Với đoạn mã sau, nếu các phần tử được đưa vào Stack theo thứ tự : 1 1
1 0 1 thì các phần tử được loại khỏi Stack theo thứ tự nào? 1. “ 1, 1, 1, 0, 1 ” 2. “ 1, 1, 0, 1,1 ” 3. “ 1, 0, 1, 0, 1 ” 4. “ 1, 0, 1, 1,1 ”
35 / Với đoạn mã sau, nếu n=37, các phần tử được bổ sung vào Stack theo thứ tự: While n<>0 do begin R:=n mod 2; Push(R); n:=n div 2; end; 1. “ 10100” 2. “ 10010” 3. “ 00101” 4. “ 10100”
36/ Trong lưu trữ dữ liệu kiểu Queue (Q), giả sử F là con trỏ trỏ tới lối trước
của Q, R là con trỏ trỏ tới lối sau của Q. Khi thêm một phần tử vào Queue, thì
R và F thay đổi thế nào?
1. “ F=F+1, R không thay đổi”
2. “ F không thay đổi, R=R-1”
3. “ F không thay đổi, R=R+1”
4. “ F=F-1, R không thay đổi”
37/ Trong lưu trữ dữ liệu kiểu Queue (Q), giả sử F là con trỏ trỏ tới lối trước
của Q, R là con trỏ trỏ tới lối sau của Q. Khi loại bỏ một phần tử khỏi Queue,
thì R và F thay đổi thế nào? 1 . “ F không thay đổi, R=R-1”
2. “ F không thay đổi, R=R+1”
3. “ F=F+1, R không thay đổi”
4. “ F=F-1, R không thay đổi” 8 lOMoAR cPSD| 48641284
38/ Giải thuật sau thực hiện việc gì? Procedure Q(x) Begin
if R=n then R:=1 else R:=R+1;
if F=R then begin write(‘full’) return end ; Q[R]:=X; if F=0 then F:=1; End;
1 “Kiểm tra Queue có rỗng không”
2. “Loại bỏ một phần tử khỏi Queue”
3. “Kiểm tra Queue có tràn không” 4 .
. “Bổ sung một phần tử vào Queue”
39/ Giải thuật sau thực hiện việc gì?
Function Q:kiểu dữ liệu; Begin
if F=0 then begin write(‘NULL’) return end; Y:=Q[F]; if F=R then begin F:=R:=0; return end; if F=n then F:=1 else F:=F+1; Q:=Y; End;
1. “ Kiểm tra Queue có rỗng không”
2. “ Bổ sung một phần tử vào Queue”
3. “ Kiểm tra Queue có tràn không”
4. “ Loại bỏ một phần tử khỏi Queue”
40/ Giải thuật sau thực hiện việc gì?
Function P(l:ds): boolean; Begin P:= (l.last =0); End;
1 .“ Làm rỗng danh sách” 9 lOMoAR cPSD| 48641284
2 .“ Kiểm tra danh sách có rỗng không”
3 .“ Cho phần tử cuối cùng trong danh sách bằng 0”
4 .“ Không có đáp án nào đúng.”
41/ Giải thuật sau thực hiện việc gì? Procedure P( l:ds); Begin l.last := 0; End;
42/ Giải thuật sau thực hiện việc gì? Procedure F(x,P: integer);
Begin for i:= (l.last +1) downto (P+1) do l.s[i]:=l.s[i-1]; l.s[P]:=x; l.last:=l.last + 1; End;
43/ Giải thuật sau thực hiện việc gì? Procedure F(P: integer); Begin for i:= P to (l.last -1) do l.s[i]:=l.s[i+1]; l.last:=l.last -1; End;
44 / Trong biểu diễn dữ liệu dưới dạng cây, cấp của cây :
1. “ Tổng số nút trên cây”
2. “ Cấp cao nhất của nút lá”
3. “ Cấp cao nhất của nút gốc”
4. “ Cấp cao nhất của một nút trên cây”
45 / Trong biểu diễn dữ liệu dưới dạng cây, nút có cấp bằng 0 gọi là : 1. “ Nút gốc” 2. “ Nút lá” 3. “ Nút trung gian”
4. “ Không có đáp án nào đúng”
46 / Trong biểu diễn dữ liệu dưới dạng cây, nút lá là nút có 10 lOMoAR cPSD| 48641284 1. “Cấp bằng 0 ” 2. “Cấp bằng 1 ”
3. “ Có bậc khác không” 4 . “ Không có đáp án nào đúng”
47 / Mỗi nút trong cây có tối đa : 1. “ 2 nút con” 2. “ Nhiều nút con” 3. “ 3 nút con” 4. “ 1 nút con”
48 / Khi lưu trữ cây nhị phân dưới dạng mảng, nếu vị trí của nút cha trong
mảng là i thì vị trí của nút con trái là: 1. “ 2*i + 1” 2. “ 2*i” 3. “ i+1” 4. “ i-1”
49 / Khi lưu trữ cây nhị phân dưới dạng mảng, nếu vị trí của nút cha trong
mảng là i thì vị tí của nút con phải là: 1. “2*i” 2. “2*i + 1” 3. “ i+1” 4. “ i-1”
50 / Khi lưu trữ cây nhị phân dưới dạng mảng, nếu vị trí của nút cha trong
mảng là 3 thì vị trí tương ứng của nút con sẽ là: 1 .“ 5 ” 2 .“ 9” 3 .“ 7” 4 .” 6”
51 / Khi lưu trữ cây nhị phân dưới dạng mảng, nếu vị trí của nút cha trong
mảng là 3 thì vị trí tương ứng của nút con trái sẽ là: 1 .“ 5 và 6” 2 .“ 4 và 5” 3 .“ 6 và 7” 11 lOMoAR cPSD| 48641284 4 .”3 và 4”
52 / Khi lưu trữ cây nhị phân dưới dạng mảng, nếu vị trí của nút cha trong
mảng là 3 thì vị trí tương ứng của nút con phải sẽ là: 1 .“ 5” 2 .“ 9” 3 .“ 7” 4 .” 6”
53 / Duyệt cây nhị phân theo thứ tự trước được thực hiện theo thứ tự :
1 .“ Thăm gốc, duyệt cây con trái theo thứ tự trước, duyệt cây con phải theo thứ tự trước.” 2.
“ Thăm gốc trước, duyệt cây con trái theo thứ tự giữa, duyệt cây con
phải theo thứ tự sau.” 3.
“ Duyệt cây con trái theo thứ tự trước, thăm gốc giữa, duyệt cây con
phải theo thứ tự sau.” 4.
“ Duyệt cây con trái theo thứ tự sau, thăm gốc trước, duyệt cây con
phải theo thứ tự sau.”
54 / Duyệt cây nhị phân theo thứ tự giữa được thực hiện theo thứ tự : 1.
“ Duyệt cây con trái theo thứ tự giữa, thăm gốc, duyệt cây con phải theo thứ tự giữa.” 2.
“ Thăm gốc trước, duyệt cây con trái theo thứ tự giữa, duyệt cây con
phải theo thứ tự sau.” 3.
“ Duyệt cây con trái theo thứ tự trước, thăm gốc giữa, duyệt cây con
phải theo thứ tự sau.” 4.
“ Thăm gốc, duyệt cây con trái theo thứ tự giữa, duyệt cây con phải theo thứ tự giữa.”
55 / Duyệt cây nhị phân theo thứ tự sau được thực hiện theo thứ tự : 1.
“ Duyệt cây con trái theo thứ tự giữa, thăm gốc, duyệt cây con phải theo thứ tự giữa.” 12 lOMoAR cPSD| 48641284 2.
“ Thăm gốc trước, duyệt cây con trái theo thứ tự giữa, duyệt cây con
phải theo thứ tự sau.” 3.
“ Duyệt cây con trái theo thứ tự trước, thăm gốc giữa, duyệt cây con
phải theo thứ tự sau.” 4.
“ Thăm gốc, duyệt cây con trái theo thứ tự giữa, duyệt cây con phải theo thứ tự giữa.” Nhóm B
1 / ý tưởng phương pháp sắp xếp chọn tăng dần (select sort ) 1.
“ Lần lượt lấy phần tử của danh sách chèn vị trí thích hợp của nó trong dãy.” 2.
“ Chọn phần tử bé nhất xếp vào vị trí thứ nhất bằng cách đổi chổ phần
tử bé nhất với phần tử thứ nhất. Tương tự đối với phần tử nhỏ thứ hai,ba...”
3. “ Bắt đầu từ cuối dãy đến đầu dãy, ta lần lượt so sánh hai phần tử kế tiếp
nhau, nếu phần tử nào bé hơn được cho lên vị trí trên.”
4 . “ Phân đoạn dãy thành nhiều dãy con và lần lượt trộn hai dãy con thành
dãy lớn hơn, cho đến khi thu được dãy ban đầu đã được sắp xếp.”
2 / ý tưởng phương pháp sắp xếp nổi bọt (bubble sort) là : 1.
“ Bắt đầu từ cuối dãy đến đầu dãy, lần lượt so sánh hai phần tử kế tiếp
nhau, nếu phần tử nào nhỏ hơn được đứng vị trí trên.” 2.
“ Lần lượt lấy phần tử của danh sách chèn vị trí thích hợp của nó trong
dãy bằng cách đẩy các phần tử lớn hơn xuống.” 3.
“ Chọn phần tử bé nhất xếp vào vị trí thứ nhất bằng cách đổi chổ phần
tử bé nhất với phần tử thứ nhất. Tương tự đối với phần tử nhỏ thứ hai,ba...”
4 . “ Phân đoạn dãy thành nhiều dãy con và lần lượt trộn hai dãy con thành
dãy lớn hơn, cho đến khi thu được dãy ban đầu đã được sắp xếp.”
3 / ý tưởng phương pháp sắp xếp chèn (insertion sort) là : 13 lOMoAR cPSD| 48641284 1.
“ Bắt đầu từ cuối dãy đến đầu dãy, ta lần lượt so sánh hai phần tử kế
tiếp nhau, nếu phần tử nào nhỏ hơn được đứng vị trí trên.” 2.
“ Lần lượt lấy phần tử của danh sách chèn vị trí thích hợp của nó trong
dãy bằng cách đẩy các phần tử lớn hơn xuống.” 3.
“ Chọn phần tử bé nhất xếp vào vị trí thứ nhất bằng cách đổi chổ phần
tử bé nhất với phần tử thứ nhất. Tương tự đối với phần tử nhỏ thứ hai,ba...”
4 . “ Phân đoạn dãy thành nhiều dãy con và lần lượt trộn hai dãy con thành
dãy lớn hơn, cho đến khi thu được dãy ban đầu đã được sắp xếp.”
4 / ý tưởng phương pháp sắp xếp nhanh (Quick sort) là :
1 . “ Chọn phần tử bé nhất xếp vào vị trí thứ nhất bằng cách đổi chổ phần tử
bé nhất với phần tử thứ nhấ; Tương tự đối với phần tử nhỏ thứ hai,ba...” 2. “
Bắt đầu từ cuối dãy đến đầu dãy, ta lần lượt so sánh hai phần tử kế tiếp nhau,
nếu phần tử nào nhỏ hơn được đứng vị trí trên.” 3.
“ Lần lượt chia dãy phần tử thành hai dãy con bởi một phần tử khoá
(dãy con trước khoá gồm các phần tử nhỏ hơn khoá và dãy còn lại gồm các
phần tử lớn hơn khoá).” 4.
“ Phân đoạn dãy thành nhiều dãy con và lần lượt trộn hai dãy con
thành dãy lớn hơn, cho đến khi thu được dãy ban đầu đã được sắp xếp.”
5 / Phương pháp sắp xếp nhanh (Quick sort) chính là phương pháp : 1. “ Chèn” 2. “ Trộn” 3. “ Phân đoạn” 4. “ Vun đống”
6 / ý tưởng phương pháp sắp xếp Trộn (Merge sort) là : 1.
“ Phân đoạn dãy thành nhiều dãy con và lần lượt trộn hai dãy con
thành dãy lớn hơn, cho đến khi thu được dãy ban đầu đã được sắp xếp” 2.
“ Bắt đầu từ cuối dãy đến đầu dãy, ta lần lượt so sánh hai phần tử kế
tiếp nhau, nếu phần tử nào nhỏ hơn được đứng vị trí trên” 14 lOMoAR cPSD| 48641284 3.
“ Chọn phần tử bé nhất xếp vào vị trí thứ nhất bằng cách đổi chổ phần
tử bé nhất với phần tử thứ nhất; Tương tự đối với phần tử nhỏ thứ hai,ba...”
4. “ Lần lượt chia dãy phần tử thành hai dãy con bởi một phần tử khoá (dãy
con trước khoá gồm các phần tử nhỏ hơn khoá và dãy còn lại gồm các phần tử lớn hơn khoá)”
7 / ý tưởng phương pháp sắp xếp vun đống (Heap sort) là :
1 . “ Tạo đống cho cây nhị phân (cây nhị phân đã được sắp xếp giảm dần).” 2
. “ Lần lượt tạo đống cho cây nhị phân (phần tử gốc có giá trị lớn nhất) và loại
phần tử gốc ra khỏi cây đưa vào dãy sắp xếp.” 3.
“ Bắt đầu từ cuối dãy đến đầu dãy, ta lần lượt so sánh hai phần tử kế
tiếp nhau, nếu phần tử nào nhỏ hơn được đứng vị trí trên.” 4.
“ Lần lượt chia dãy phần tử thành hai dãy con bởi một phần tử khoá
(dãy con trước khoá gồm các phần tử nhỏ hơn khoá và dãy còn lại gồm các
phần tử lớn hơn khoá).”
8 / Cơ chế heap trong sắp xếp vun đống là 1.
“ Cây nhị phân đầy đủ với tính chất giá trị của nút cha luôn lớn hơn giá trị hai nút con.” 2.
“ Cây nhị phân hoàn chỉnh với tính chất giá trị của nút cha lớn luôn lớn
hơn giá trị các nút trong cây con trái và nhỏ hơn giá trị các nút trong cây con phải.” 3.
“ Cây nhị phân hoàn chỉnh với tính chất giá trị của nút cha luôn lớn hơn giá trị hai nút con.” 4.
“ Cây nhị phân đầy đủ với tính chất giá trị của nút cha lớn luôn lớn hơn
giá trị các nút trong cây con trái và nhỏ hơn giá trị các nút trong cây con phải.”
10 / Tư tưởng của giải thuật tìm kiếm nhị phân :
1. “ Tìm kiếm dựa vào cây nhị tìm kiếm.”
2. “ So sánh X lần lượt với các phần tử thứ nhất, thứ hai,... của dãy cho đến
khi gặp phần tử có khoá cần tìm.” 15 lOMoAR cPSD| 48641284
3. “ Lần lượt chia dãy thành hai dãy con dựa vào phần tử khoá, sau đó thực
hiện việc tìm kiếm trên hai đoạn đã chia.”
4. “ Tại mỗi bước tiến hành so sánh X với phần tử ở giữa của dãy,Dựa vào
bước so sánh này quyết định giới hạn dãy tìm kiếm nằm ở nửa trên, hay
nửa dưới của dãy hiện hành.”
11 / Tư tưởng của giải thuật tìm kiếm tuần tự :
1.“ So sánh X lần lượt với các phần tử thứ nhất, thứ hai,... của dãy cho đến
khi gặp phần tử có khoá cần tìm.” 2.
“ Tại mỗi bước tiến hành so sánh X với phần tử ở giữa của dãy.Dựa vào
bước so sánh này quyết định giới hạn dãy tìm kiếm nằm ở nửa trên, hay nửa
dưới của dãy hiện hành.” 3.
“ Lần lượt chia dãy thành hai dãy con dựa vào phần tử khoá, sau đó thực
hiện việc tìm kiếm trên hai đoạn đã chia.” 4.
“ Tìm kiếm dựa vào cây nhị tìm kiếm: Nếu giá trị cần tìm nhỏ hơn gốc thì
thực hiện tìm kiếm trên cây con trái, ngược lại ta việc tìm kiếm được thực hiện trên cây con phải.”
12 / Tư tưởng của giải thuật tìm kiếm trên cây nhị phân tìm kiếm : 1.
“ Lần lượt chia dãy thành hai dãy con dựa vào phần tử khoá, sau đó
thực hiện việc tìm kiếm trên hai đoạn đã chia.” 2.
“ So sánh X lần lượt với các phần tử thứ nhất, thứ hai,... của dãy cho
đến khi gặp phần tử có khoá cần tìm.” 3.
“ Tại mỗi bước tiến hành so sánh X với phần tử ở giữa của dãy,Dựa
vào bước so sánh này quyết định giới hạn dãy tìm kiếm nằm ở nửa trên, hay
nửa dưới của dãy hiện hành.” 4.
“ Tìm kiếm dựa vào cây nhị phân tìm kiếm: Nếu giá trị cần tìm nhỏ hơn
gốc thì thực hiện tìm kiếm trên cây con trái, ngược lại tìm kiếm được thực
hiện trên cây con phải.”
13 / Cây nhị phân tìm kiếm là :
1. “ Cây nhị phân thoả tính chất heap”
2. “ Cây nhị phân mà mỗi nút trong cây đều thoả tính chất: giá trị của nút cha
nhỏ hơn mọi nút trên cây con phải và lớn hơn mọi nút trên cây con trái của nó.”
3. “ Cây nhị phân mà mỗi nút trong cây đều thoả tính chất: giá trị của nút cha
lớn hơn giá trị của hai nút con.” 4 . “ Là cây nhị phân đầy đủ.”
14 / Trong các giải thuật sắp xếp, giải thuật nào áp dụng phương pháp Chia để trị?
1. “ Quick sort, Heap sort”
2. “ Quick sort, Merge sort” 16 lOMoAR cPSD| 48641284
3. “ Quick sort, Bubble sort”
4. “ Qucick sort, Insert sort”
15/ Thủ tục sau áp dụng giải thuật sắp xếp nào? Procedure F Begin For i:=1 to (n-1) do For j:=n downto (i+1) do _ if a[j] < a[j-1] then
begin tg:=a[j]; a[j]:=a[j-1]; a[j-1]:=tg; end; End; 1. “ Select sort” 2. “ Bubble sort” 3. “ Insert sort” 4. “ Merge sort”
16/ Thủ tục sau áp dụng giải thuật sắp xếp nào? Procedure F Begin a[0]:=- ∞; for i:=2 to n do begin x:=a[i]; j:=i-1; while xend; a[j+1]:=x; end; End; 1. “ Insert sort” 2. “ Select sort” 3. “ Bubble sort” 4. “ Merge sort”
17/ Thủ tục sau áp dụng giải thuật sắp xếp nào? Procedure F(X,b,m,n,Z) Begin For i:=1 to n-1 do
Begin m:=i; for j:=i+1 to n do if a[j] < a[m] then m:=j; if m <> i then Begin
X:= a[i]; a[i]:= a[m]; a[m]:= X; 17 lOMoAR cPSD| 48641284 End; End; End; 1. “ Insert sort” 2. “ Select sort” 3. “ Bubble sort” 4. “ Merge sort”
18/ Thủ tục sau áp dụng giải thuật sắp xếp nào? Procedure F(a, t, s); Begin B:= true;
if twhile b do begin _ i:=i+1; while a[i]<=key do i:=i+1;
j:=j -1; while a[j]>=key do j:=j-1;
if i begin tg:=a[i]; a[i]:=a[j]; a[j]:=tg; end else b:=false; end;
tg:=a[t]; a[t]:=a[j]; a[j]:=tg; call F(a, t,j-1); cal F(a, j+1,s); end; End; 1. “ Quick sort” 2. “ Merge sort” 3. “ Bubble sort” 4. “ Insert sort”
19 / Cho dãy số {6 1 3 0 5 7 9 2 8 4}. áp dụng phương pháp sắp xếp lựa
chọn (Select sort) sau lần lặp đầu tiên của giải thuật ta có kết quả: {0 1 3 6 5
7 9 2 8 4}. Dãy số thu được sau lần lặp thứ hai là :
1. “ {0 1 2 3 4 5 6 7 8 9}”
2. “ {0 1 2 6 5 7 9 3 8 4}”
3. “ {0 1 2 6 5 7 9 3 4 8}”
4. “ {0 1 3 6 5 7 9 2 8 4}”
20 / Cho dãy số {6 1 3 0 5 7 9 2 8 4}. áp dụng phương pháp sắp xếp lựa
chọn (Select sort) sau lần lặp đầu tiên của giải thuật ta có kết quả: {0 1 3 6 5
7 9 2 8 4}. Dãy số thu được sau lần lặp thứ ba là : 18 lOMoAR cPSD| 48641284
1 “ {0 1 2 6 5 7 9 3 4 8}”
2. “ {0 1 2 3 6 5 7 9 8 4}”
3. . “ {0 1 2 6 5 7 9 3 8 4}” 4. “ {0 1 2 3 4 5 6 7 8 9}
21 / Cho dãy số {6 1 3 0 5 7 9 2 8 4}. áp dụng phương pháp sắp xếp lựa
chọn (Select sort) sau lần lặp đầu tiên của giải thuật ta có kết quả: {0 1 3 6 5
7 9 2 8 4}. Dãy số thu được sau lần lặp thứ tư là :
1 . “ {0 1 2 3 6 5 7 9 8 4}”
2 .“ {0 1 2 3 5 7 9 6 8 4}”
3. “ {0 1 2 3 5 7 9 4 8 6}”
4. “ {0 1 2 3 4 5 6 7 8 9}”
22 / Cho dãy số {6 1 3 0 5 7 9 2 8 4}. áp dụng phương pháp sắp xếp lựa
chọn (Select sort) sau lần lặp đầu tiên của giải thuật ta có kết quả: {0 1 3 6 5
7 9 2 8 4}. Dãy số thu được sau lần lặp thứ năm là :
1. “ {0 1 2 3 4 5 6 7 8 9}”
2. “ {0 1 2 3 6 5 7 9 8 4}”
3. “ {0 1 2 3 5 7 9 4 8 6}”
4. “ {0 1 2 3 4 7 9 6 8 5}”
23 / Cho dãy số {6 1 3 0 5 7 9 2 8 4}. áp dụng phương pháp sắp xếp lựa
chọn (Select sort) sau lần lặp đầu tiên của giải thuật ta có kết quả: {0 1 3 6 5
7 9 2 8 4}. Dãy số thu được sau lần lặp thứ sáu là :
1. “ {0 1 2 3 4 5 6 7 8 9}”
2. “ {0 1 2 3 4 7 9 6 8 5}”
3. “ {0 1 2 3 4 5 6 9 8 7}”
4. “ {0 1 2 3 4 5 9 6 8 7}”
24 / Cho dãy số {6 1 3 0 5 7 9 2 8 4}. áp dụng phương pháp sắp xếp lựa
chọn (Select sort) sau lần lặp đầu tiên của giải thuật ta có kết quả: {0 1 3 6 5
7 9 2 8 4}. Dãy số thu được sau lần lặp thứ bảy là :
1. “{0 1 2 3 4 5 9 6 8 7}”
2. “{0 1 2 3 4 5 9 6 8 7}”
3. “ {0 1 2 3 4 5 6 9 8 7}”
4. “ {0 1 2 3 4 5 6 7 8 9}” 19 lOMoAR cPSD| 48641284
25 / Cho dãy số {6 1 3 0 5 7 9 2 8 4}. áp dụng phương pháp sắp xếp
lựa chọn (Select sort) tăng dần, sau lần lặp đầu tiên của giải thuật ta có kết quả:
{0 1 3 6 5 7 9 2 8 4}. Dãy số thu được sau lần lặp thứ tám là :
1. “ {0 1 2 3 4 5 6 7 8 9}”
2. “ {0 1 2 3 4 5 9 6 8 7}”
3. “ {0 1 2 3 4 5 9 6 8 7}”
4. “ {0 1 2 3 4 5 6 9 8 7}”
26/ Cho dãy số {4 7 0 9 2 5 3 1 8 6}. áp dụng phương pháp sắp xếp nổi
bọt (Bubble sort) sau lần lặp đầu tiên của giải thuật ta có kết quả:{0 4 7 1 9
2 5 3 6 8}. Dãy số thu được sau lần lặp thứ hai là :
1. “ {0 4 7 1 9 2 5 3 6 8}”
2. “ {0 1 4 7 2 9 3 5 6 8}”
3. “ {0 1 2 4 7 3 9 5 6 8}”
4. “ {0 1 2 3 4 7 5 9 6 8}”
27/ Cho dãy số {4 7 0 9 2 5 3 1 8 6}. áp dụng phương pháp sắp xếp nổi
bọt (Bubble sort) sau lần lặp đầu tiên của giải thuật ta có kết quả:{0 4 7 1 9
2 5 3 6 8}. Dãy số thu được sau lần lặp thứ ba là :
1. “ {0 1 4 7 2 9 3 5 6 8}”
2. “ {0 4 7 1 9 2 5 3 6 8}”
3. “ {0 1 2 4 7 3 9 5 6 8}”
4. “ {0 1 2 3 4 7 5 9 6 8}”
28/ Cho dãy số {4 7 0 9 2 5 3 1 8 6}. áp dụng phương pháp sắp xếp nổi
bọt (Bubble sort) sau lần lặp đầu tiên của giải thuật ta có kết quả:{0 4 7 1 9
2 5 3 6 8}. Dãy số thu được sau lần lặp thứ bốn là :
1. “ {0 1 2 3 4 7 9 5 6 8}”
2. “ {0 1 2 4 7 3 9 5 6 8}”
3. “ {0 1 4 7 2 9 3 5 6 8}”
4. “ {0 1 2 3 4 7 5 9 6 8}”
29/ Cho dãy số {4 7 0 9 2 5 3 1 8 6}. áp dụng phương pháp sắp xếp nổi
bọt (Bubble sort) sau lần lặp đầu tiên của giải thuật ta có kết quả:{0 4 7 1 9
2 5 3 6 8}. Dãy số thu được sau lần lặp thứ năm là :
1. “ {0 1 2 4 7 3 9 5 6 8}” 20