Câu hỏi kiểm tra trắc nghiệm chương 2 + 3 môn Quản lý kinh doanh | Trường đại học Kinh Doanh và Công Nghệ Hà Nội

Hãy chọn định nghĩa đúng nhất về danh sách kiểu hàng đợi (Queue)?A. 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). B. 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). 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
KIỂM TRA TRẮC NGHIỆM – CHƯƠNG 2+3
1. Hãy chọn ịnh nghĩa úng nhất về danh sách kiểu hàng ợi (Queue)?
A. 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).
B. Hàng ợi 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).
C. 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). Phép loại bỏ không thực hiện ược.
D. Hàng ợi 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.
2. Trong bốn kiểu ký hiệu sau ây, ký hiệu nào biểu thị cho danh sách kiểu hàng ợi?
A. LIFO
B. FILO
C. FIFO
D. LOLO
3. Để thêm một ối tượng x bất kỳ vào Stack, ta dùng hàm nào sau ây?
A.POP(x)
B. PUSH(x)
C.TOP(x)
D. EMPTY(x)
4. Để loại bỏ một ối tượng ra khỏi Stack, ta dùng hàm nào sau ây?
A. PUSH(x)
B. EMPTY(x)
C. FULL(x)
D. POP(x)
5. Trong lưu trữ dữ liệu kiểu Queue (Q) dưới dạng mảng nối vòng, giả sử F con trỏ
trỏ tới lối trước của Q, R con trỏ trỏ tới lối sau của Q. Điều kiện F=R=0 nghĩa
trong các phương án sau?
A. Queue tràn.
B. Queue rỗng.
C. Đặt phần tử ầu và phần tử cuối của Queue bằng 0.
D. Kiểm tra chỉ số trước và chỉ số sau của Queue có bằng nhau hay không.
6. 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 F thay ổi thế
nào trong các phương án sau? A. F không thay ổi, R=R+1.
B. F không thay ổi, R=R-1.
C. F=F+1, R không thay ổi.
D. F=F-1, R không thay ổi.
lOMoARcPSD| 48641284
7. 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ử vào Queue, thì R và F thay ổi
thế nào trong các phương án sau? A. F không thay ổi, R=R+1.
B. F không thay ổi, R=R-1.
C. F=F+1, R không thay ổi.
D. F=F-1, R không thay ổi.
8. Trong các danh sách tuyến tính sau ây, danh sách nào sau ây có dạng ngăn xếp?
A. 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.
B. 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.
C. 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 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.
D. 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 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.
9. Danh sách tuyến tính dạng ngăn xếp làm việc theo nguyên tắc nào sau ây?
A. FIFO( first in first out).
B. LIFO(last in first out).
C. LILO(last in last out).
D. FOLO(fisrt out last out).
10. Cho Stack gồm 5 phần tử {12, 5, 20, 23, 72}, trong ó 72 là phần tử ở ỉnh Stack. Để lấy
ra phần tử thứ 4 trong Stack ta phải thực hiện theo phương án nào?
A. POP(72), POP(23), POP(72).
B. POP(23), PUSH(23), POP(72).
C. POP(72), POP(23), PUSH(72).
D. POP(23), PUSH(72), POP(72).
11. Hàm F chính là hàm nào dưới ây trong lưu trữ dữ liệu kiểu Stack?
Procedure F(X)
Begin
T:=T+1;
S[T]:=X;
End;
A. POP()
B. PUSH()
C. TOP()
D. FULL()
12. 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];
lOMoARcPSD| 48641284
End;
A. Kiểm tra Stack có tràn không.
B. Kiểm tra Stack có rỗng không.
C. Loại bỏ một phân tử ra khỏi Stack.
D. Bổ sung một phần tử vào Stack
13. Cho oạn mã sau:
while n<>0 do
begin
R:=n mod 2;
Push(R); n:=n
div 2;
end;
Khi áp dụng oạn mã trên, Stack bao gồm các phần tử sau ây nào khi n=13?
A. 1 , 1 , 0 , 1
B. 1 , 0 , 1 , 1
C. 6 , 3 , 1
D. 1 , 3 , 6
14. Với oạn sau, nếu các phần tử ược ưa vào Stack theo thứ tự 1 1 0 1 thì các
phần tử ược loại khỏi Stack theo thứ tự nào sau ây?
While T>0 do
begin
R:=POP(S[T]);
write(R); end;
A. 0, 1, 1, 1
B. 1, 0, 1, 1
C. 1, 1, 0, 1
D. 1, 1, 1, 0
15. Giải thuật sau thực hiện việc gì trong các phương án sau?
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;
A. Loại bỏ một phần tử ra khỏi Queue.
B. Bổ sung một phần tử vào Queue.
C. Kiểm tra Queue có tràn không.
lOMoARcPSD| 48641284
D. Kiểm tra Queue có rỗng không.
16. Giải thuật sau thực hiện việc gì trong những phương án sau?
Function P(l:ds): boolean;
Begin
P:= (l.last =0);
End;
A. Làm rỗng danh sách.
B. Kiểm tra danh sách có rỗng hay không.
C. Cho phần tử cuối cùng trong danh sách bằng 0
D. Không có áp án nào úng.
17. Giải thuật sau thực hiện việc gì trong những phương án sau?
Procedure P( l:ds);
Begin
l.last := 0;
End;
A. Làm rỗng danh sách.
B. Kiểm tra danh sách có rỗng hay không.
C. Cho phần tử cuối cùng trong danh sách bằng 0.
D. Không có áp án nào úng.
18. Giải thuật sau thực hiện việc gì trong những phương án sau?
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;
A. Bổ sung phần tử x vào ầu danh sách.
B. Bổ sung phần tử x vào cuối danh sách.
C. Chèn phần tử x vào vị trí P trong danh sách.
D. Không áp án nào úng.
19. Giải thuật sau thực hiện việc gì trong những phương án sau?
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;
A. Xoá phần tử ầu tiên trong danh sách.
B. Xoá phần tử cuối cùng trong danh sách.
C. Xoá một phần tử tại vị trí P trong danh sách.
D. Không áp án nào úng.
lOMoARcPSD| 48641284
20. Theo nguyên tắc hoạt ộng của ngăn xếp (Stack), khi bổ sung nútvào ngăn xếp chính
là bổ sung vào vị trí nào của ngăn xếp?
A. Vị trí áy của ngăn xếp
B. Vị trí ỉnh của ngăn xếp
C. Vị trí bất kỳ của ngăn xếp
D. Vị trí n ược chỉ ịnh
21. Theo nguyên tắc hoạt ng của ngăn xếp (Stack), khi loại bỏ nút ra khỏi ngăn xếp
chính là loại bỏ nút ở vị trí nào của ngăn xếp?
A. Vị trí áy của ngăn xếp
B. Vị trí ỉnh của ngăn xếp
C. Vị trí bất kỳ của ngăn xếp
D. Vị trí n ược chỉ ịnh
22. Khi muốn thêm một phần tử vào ngăn xếp(Stack), trước ó luôn luôn phải thực hiện
công việc gì?
A. Kiểm tra Stack có ầy không
B. Kiểm tra Stack có rỗng không
C. Khởi tạo Stack
D. Không phải làm gì, thực hiện việc thêm luôn
23. Khi muốn loại một phần tử ra khỏi ngăn xếp(Stack), trước ó luôn luôn phải thực
hiện công việc gì?
A. Kiểm tra Stack có ầy không
B. Kiểm tra Stack có rỗng không
C. Khởi tạo Stack
D. Không phải làm gì, thực hiện việc thêm luôn
24. “Thích hợp lưu trcác loại dữ liệu mà trình tự truy xuất ngược với trình tự lưu trữ”
là ứng dụng của ối tượng nào?
A. Danh sách (List)
B. Hàng ợi (Queue)
C. Ngăn xếp (Stack)
D. Không có ối tượng nào
25. Thao tác Push(X) dùng trong Stack ể thực hiện việc gì?
A. Thêm phần tử X vào Stack
B. Loại bỏ phần tử X ra khỏi Stack
C. Gán giá trị X cho một phần tử trong Stack
D. Gán giá trị một phần tử trong Stack cho X
26. Thao tác Pop(X) dùng trong Stack ể thực hiện việc gì?
A. Thêm phần tử X vào Stack
B. Loại bỏ phần tử X ra khỏi Stack
C. Gán giá trị X cho một phần tử trong Stack
lOMoARcPSD| 48641284
D. Gán giá trị một phần tử trong Stack cho X
27. Trong lưu trữ dữ liệu kiểu Queue (Q) , giá trị F không thay ổi, giá trị R tăng lên 1
ơn vị khi thực hiện công việc gì?
A. Khởi tạo Queue
B. Kiểm tra Queue ầy
C. Loại bỏmột phần tử khỏi Queue
D. Thêm một phần tử vào Queue
28. Trong lưu trữ dữ liệu kiểu Queue (Q) , giá trị R không thay ổi, giá trị F ng lên 1
ơn vị khi thực hiện công việc gì?
A. Khởi tạo Queue
B. Kiểm tra Queue ầy
C. Loại bỏmột phần tử khỏi Queue
D. Thêm một phần tử vào Queue
29. Cho thủ tục EnQ() thực hiện thêm phần tử vào Queue, thủ tục DeQ() thực hiện loại
bỏ phần tử ra khỏi Queue. Sau khi thực hiện dãy lệnh: EnQ(8), EnQ(12), EnQ(3), DeQ(),
DeQ(), EnQ(7) ược danh sách nào trong Queue?
A. 8, 12, 3, 7
B. 12, 3, 7
C. 3, 7
D. 8, 7
30. Cho thủ tục EnQ() thực hiện thêm phần tử vào Queue, thủ tục DeQ() thực hiện loại
bỏ phần tử ra khỏi Queue. Sau khi thực hiện dãy lệnh nào ể ược danh sách trong
Queue là 9, 15, 8?
A. EnQ(9), EnQ(5), DeQ(), EnQ(8), EnQ(15)
B. EnQ(9), DeQ(), EnQ(15), EnQ(8)
C. EnQ(15), EnQ(8), EnQ(9)
D. EnQ(4), EnQ(9), DeQ(), EnQ(15), EnQ(8)
31. Yếu tố nào xây dựng nên một chương trình hoàn chỉnh? A.
Dữ liệu tốt, giải thuật ơn giản.
B. Cấu trúc dữ liệu tốt.
C. Giải thuật có thời gian thực hiện nhanh nhất .
D. Cấu trúc dữ liệu thích hợp, giải thuật xử lý hiệu quả .
32. Khái niệm nào là ầy ủ ý nghĩa nhất về giải thuật?
A. Giải thuật cần có một hoặc nhiều dữ liệu ra (output), dữ liệu vào (input).
B. Giải thuật hay còn gọi là thuật toán dùng ể chỉ phương pháp hay cách thức giải quyết vấn
ề (bao gồm một dãy các bước tính toán rõ ràng và chính xác) .
C. Giải thuật một dãy hữu hạn các bước, tất cả các phép toán mặt trong các bước của
thuật toán phải ủ ơn giản.
D. Giải thuật là nòng cốt của chương trình.
lOMoARcPSD| 48641284
33. Hãy cho biết âu ặc trưng của thuật toán trong các phương án sau? A.
Mỗi thuật toán có bộ dữ liệu vào, ra tương ứng.
B. Mỗi bước của thuật toán cần phải ược mô tả một các chính xáC.
C. Thuật toán phải dừng lại sau một số hữu hạn các bước cần thực hiện.
D. Tất cả các ặc trưng ã nêu.
34. Dựa vào yếu tố nào sau ây ể ánh giá "Thời gian thực hiện của giải thuật"? A. Tính
xác ịnh.
B. Tính dừng.
C. Độ phức tạp tính toán của giải thuật.
D. Thời gian khi chạy chương trình cụ thể.
35. Đâu là tiêu chuẩn ể ánh giá "Độ phức tạp tính toán của giải thuật" ?
A. Dữ liệu ầu vào, dung ợng bộ nhớ B.
Tốc ộ thực thi lệnh của máy
C. Độ phức tạp về thời gian của thuật toán D.
Tất cả các tiêu chuẩn ã nêu
36. "Hãy sắp xếp theo thứ tự tăng dần của cấp thời gian thực hiện chương trình".
Trong các sắp xếp sau, thứ tự nào là úng?
A. O(1), O(nlogn), O(n), O(logn).
B. O(1), O(logn), O(n), O(nlogn).
C. O(nlogn), O(n), O(logn), O(1).
D. O(logn), O(n), O(nlogn), O(1).
37. Độ phức tạp về thời gian của câu lệnh nào ược ánh giá theo nguyên tắc cộng? A.
Câu lệnh ghép
B. Câu lệnh gán C.
Câu lệnh lặp
D. Câu lệnh nhảy
38. Độ phức tạp về thời gian của u lệnh nào ược ánh giá theo nguyên tắc nhân? A. Câu
lệnh ghép
B. Câu lệnh gán
C. Câu lệnh lặp
D. Câu lệnh nhảy
39. Độ phức tạp về thời gian của câu lệnh nào ược ánh giá bằng hằng số O(1)? A.
Câu lệnh ghép
B. Câu lệnh gán
C. Câu lệnh lặp
D. Câu lệnh iều kiện
40. "Hãy sắp xếp theo thứ tự giảm dần của cấp thời gian thực hiện chương trình".
Trong các sắp xếp sau, thứ tự nào là úng?
A. O(n
2
), O(nlogn), O(n), O(logn).
B. O(n
2
), O(logn), O(n), O(nlogn).
lOMoARcPSD| 48641284
C. O(nlogn), O(n
2
), O(logn), O(n).
D. O(n
2
), O(n), O(nlogn), O(logn).
41. Hãy cho biết âu là ặc iểm của giải thuật ệ quy? A. Trong
thủ tục ệ quy có lời gọi ến chính thủ tục ó.
B. Sau mỗi lần có lời gọi ệ quy thì kích thước của bài toán ược thu nhỏ hơn trước.
C. một trường hợp ặc biệt, trường hợp suy biến. Khi trường hợp 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. D. Tất cả các ặc iểm ã nêu.
42. Hãy cho biết phát biểu nào là úng về Giải thuật ệ quy?
A. Trong giải thuật của nó có lời gọi tới chính nó nhưng với phạm vi nhỏ hơn.
B. Trong giải thuật của nó có lời gọi tới chính nó nhưng với phạm vi lớn hơn.
C. Trong giải thuật của nó có lời gọi tới một giải thuật khác ã biết kết quả.
D. Trong giải thuật của nó có lời gọi tới một giải thuật khác có thể là chính nó.
43. Giả sử T1(n) T2(n) là thời gian thực hiện của hai giai oạn chương trình P1 và P2
mà T1(n) = O(f(n)); T2(n) = O(g(n)). Theo qui tắc tổng xác ịnh phức tạp tính toán của
giải thuật thì thời gian thực hiện oạn P1 rồi ến P2 là phương án nào sau ây?
A. T1(n) + T2(n) = O((f(n)+g(n))).
B. T1(n) + T2(n) = O(max(f(n),g(n))).
C. T1(n) + T2(n) = O(Min(f(n),g(n))).
D. T1(n) + T2(n) = O((f(n) or g(n))).
44. Trong một chương trình 3 bước thực hiện nối tiếp, thời gian thực hiện từng
bước lần lượt là O(n^2), O(n^3) và O(nlogn). Cho biết thời gian thực hiện của chương
trình là bao nhiêu trong các phương án sau?
A. O(n^2)+ O(n^3) + O(nlogn).
B. O(n^2).
C. O(n^3).
D. O(nlogn).
45. Nếu tương ng với P1 P2 T1(n) = O(f(n)), T2(n) = O(g(n)) thì thời gian thực
hiện P1 và P2 lồng nhau sẽ là bao nhiêu trong các phương án sau?
A. T1(n)T2(n) = O(f(n)+g(n)).
B. T1(n)T2(n) = O(f(n).g(n)).
C. T1(n)T2(n) = O(f(n)and g(n)).
D. T1(n)T2(n) = O(f(n)/g(n)).
46. Thời gian thực hiện các lệnh Read(n), Write(n) bao nhiêu trong các phương án
sau?
A. O(1).
B. O(2).
C. O(logn).
D. O(n).
47. Hãy chọn phương án úng về ộ phức tạp thời gian thực hiện câu lệnh (1)?
lOMoARcPSD| 48641284
function Euclid (m, n : integer) :integer;
var r : integer ; begin r :=
m mod n; (1) while r<>
0 do (2) begin m
:= n; (3) n :=r;
(4) r := m mod n; (5)
end; Euclid := n; (6)
end;
A. O(n)
B. O(2)
C. O(m)
D. O(1)
48. Hãy chọn phương án úng về ộ phức tạp thời gian thực hiện câu lệnh (1)?
Procedure InSo(n : integer);
var i : integer ; Begin for
i:=1 to n do (1) if (i
mod 2 =0) then (2) write(i,“
”); (3) end;
A. O(n)
B. O(1)
C. O(2)
D. O(n^2)
49. Cho oạn chương trình sau:
Function UCLN (m,n)
Begin
Read(m); Read(n) (1)
While m<>n do (2)
If m>n then m:=m-n else n:=n-m (3)
UCLN:=m (4)
Write(USCLN)
End;
Sắp xếp thứ tự phức tạp thời gian của c dòng lệnh trên theo thứ tự tăng dần. Hãy
cho biết sắp xếp nào là úng?
A. (1), (3), (2), (4)
B. (4), (2), (3), (1)
C. (4), (1), (3), (2)
D. (1), (3), (4), (2)
ANSWER: C
50. Hãy cho biết mỗi lần gọi ệ quy thì giá trị của n sẽ thế nào trong hàm ệ qui sau?
Function Factorial(n)
lOMoARcPSD| 48641284
Begin
if n= 0 then Factorial:=1
else Factorial := n*Factorial(n-1);
End;
A. Giảm 1.
B. Tăng 1.
C. N=0.
D. N=1.
51. Cho hàm ệ qui sau, chọn phương án úng về tác dụng của dòng lệnh “if n=0 then
Factorial:=1” ?
Function Factorial(n) Begin
if n=0 then Factorial:=1
else Factorial := n*Factorial(n-1);
End;
A. Điều kiện không thực hiện ệ quy.
B. Lặp vô hạn.
C. Điều kiện dừng ệ quy.
D. Lặp 1 lần.
52. Hàm ệ qui sau giải bài toán gì sau ây?
Function A(n) Begin
if n= 0 then A:=1 else A :=
n*A(n-1); End;
A. Tính số cặp thỏ sau n tháng.
B. Tính n^n (n mũ n).
C. Tính giai thừa n.
D. Không có áp án úng
53. Hàm ệ qui sau cho kết quả nào sau ây khi n=4?
Function A(n)
Begin if n= 0 then
A:=1
else A := n*A(n-1);
End;
A. 6
B. 24
C. 12
D. 8
54. Hàm ệ qui cho kết quả nào sau ây khi n=6?
Function F(n:integer):integer;
Begin
if n<=2 then F:=1
else F := F(n-2) + F(n-1) End;
A. 8
lOMoARcPSD| 48641284
B. 6
C. 10
D. 11
55. Cho giải thuật quy của bài toán Tháp Nội, chọn phương án úng về số bước
chuyển ĩa khi n=4?
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;
A. 14 bước.
B. 8 bước.
C. 16 bước.
D. 15 bước.
56. Hãy cho biết dòng lệnh nào thực hiện lệnh ệ quy trong hàm sau:
Function A(n:integer):integer
Begin (1)
if n<=2 then A:=1 (2)
else (3)
A := A(n-2) + A(n-1); (4)
End;
A. Dòng lệnh số 1.
B. Dòng lệnh số 2.
C. Dòng lệnh số 3.
D. Dòng lệnh số 4.
57. Cho giải thuật quy của bài toán "Tháp Nội", Procedure
Chuyen(n, A, B, C)
Begin
(1)
if n=1 then chuyển ĩa từ A sang C
(2)
else begin (4) call Chuyen(n-
1, A, C, B); (5) call Chuyen(1, A, B,
C); (6) call Chuyen(n-1, B, A, C) ;
(7) end; (8)
(3)
End;
(9)
Dòng lệnh nào gọi là lệnh suy biến?
A. Dòng lệnh số 5.
lOMoARcPSD| 48641284
B. Dòng lệnh số 2.
C. Dòng lệnh số 6.
D. Dòng lệnh số 8.
58. Hãy cho biết dòng lệnh nào là iều kiện dừng ệ quy trong hàm sau?
Function Factorial(n)
Begin (1)
if n= 0 then Factorial:=1 (2)
else Factorial := n*Factorial(n-1); (3)
End; (4)
A. Dòng lệnh số 1.
B. Dòng lệnh số 2.
C. Dòng lệnh số 3.
D. Dòng lệnh số 4.
59. Để diễn ạt giải thuật, không sử dụng ược phương pháp nào?
A. Dùng ngôn ngữ tự nhiên ể liệt kê từng bước
B. Sử dụng các hình quy ước ể vẽ sơ ồ
C. Dùng ngôn ngữ lập trình C
D. Vẽ biểu ồ
60. Sử dụng ngôn ngữ lập trình ể diễn ạt giải thuật có nhược iểm gì?
A. Không thể hiện ược giải thuật
B. Phụ thuộc ngữ nghĩa, cú pháp gò bó
C. Cho kết quả không chính xác
D. Tất các ý ã nêu
| 1/12

Preview text:

lOMoAR cPSD| 48641284
KIỂM TRA TRẮC NGHIỆM – CHƯƠNG 2+3
1. Hãy chọn ịnh nghĩa úng nhất về danh sách kiểu hàng ợi (Queue)? A.
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). B.
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). C.
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). Phép loại bỏ không thực hiện ược. D.
Hàng ợi 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.
2. Trong bốn kiểu ký hiệu sau ây, ký hiệu nào biểu thị cho danh sách kiểu hàng ợi? A. LIFO B. FILO C. FIFO D. LOLO
3. Để thêm một ối tượng x bất kỳ vào Stack, ta dùng hàm nào sau ây? A.POP(x) B. PUSH(x) C.TOP(x) D. EMPTY(x)
4. Để loại bỏ một ối tượng ra khỏi Stack, ta dùng hàm nào sau ây? A. PUSH(x) B. EMPTY(x) C. FULL(x) D. POP(x)
5. Trong lưu trữ dữ liệu kiểu Queue (Q) dưới dạng mảng nối vòng, 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. Điều kiện F=R=0 nghĩa là gì
trong các phương án sau?
A. Queue tràn. B. Queue rỗng.
C. Đặt phần tử ầu và phần tử cuối của Queue bằng 0.
D. Kiểm tra chỉ số trước và chỉ số sau của Queue có bằng nhau hay không.
6. 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 trong các phương án sau? A. F không thay ổi, R=R+1. B. F không thay ổi, R=R-1. C. F=F+1, R không thay ổi. D. F=F-1, R không thay ổi. lOMoAR cPSD| 48641284
7. 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ử vào Queue, thì R và F thay ổi
thế nào trong các phương án sau?
A. F không thay ổi, R=R+1. B. F không thay ổi, R=R-1. C. F=F+1, R không thay ổi. D. F=F-1, R không thay ổi.
8. Trong các danh sách tuyến tính sau ây, danh sách nào sau ây có dạng ngăn xếp? A.
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. B.
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. C.
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. D.
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.
9. Danh sách tuyến tính dạng ngăn xếp làm việc theo nguyên tắc nào sau ây? A. FIFO( first in first out). B. LIFO(last in first out). C. LILO(last in last out). D. FOLO(fisrt out last out).
10. Cho Stack gồm 5 phần tử {12, 5, 20, 23, 72}, trong ó 72 là phần tử ở ỉnh Stack. Để lấy
ra phần tử thứ 4 trong Stack ta phải thực hiện theo phương án nào? A. POP(72), POP(23), POP(72).
B. POP(23), PUSH(23), POP(72).
C. POP(72), POP(23), PUSH(72).
D. POP(23), PUSH(72), POP(72).
11. Hàm F chính là hàm nào dưới ây trong lưu trữ dữ liệu kiểu Stack? Procedure F(X) Begin T:=T+1; S[T]:=X; End; A. POP() B. PUSH() C. TOP() D. FULL()
12. 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]; lOMoAR cPSD| 48641284 End;
A. Kiểm tra Stack có tràn không.
B. Kiểm tra Stack có rỗng không.
C. Loại bỏ một phân tử ra khỏi Stack.
D. Bổ sung một phần tử vào Stack
13. Cho oạn mã sau: while n<>0 do begin R:=n mod 2; Push(R); n:=n div 2; end;
Khi áp dụng oạn mã trên, Stack bao gồm các phần tử sau ây nào khi n=13? A. 1 , 1 , 0 , 1 B. 1 , 0 , 1 , 1 C. 6 , 3 , 1 D. 1 , 3 , 6
14. Với oạn mã sau, nếu các phần tử ược ưa vào Stack theo thứ tự 1 1 0 1 thì các
phần tử ược loại khỏi Stack theo thứ tự nào sau ây? While T>0 do begin R:=POP(S[T]); write(R); end; A. 0, 1, 1, 1 B. 1, 0, 1, 1 C. 1, 1, 0, 1 D. 1, 1, 1, 0
15. Giải thuật sau thực hiện việc gì trong các phương án sau?
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;
A. Loại bỏ một phần tử ra khỏi Queue.
B. Bổ sung một phần tử vào Queue.
C. Kiểm tra Queue có tràn không. lOMoAR cPSD| 48641284
D. Kiểm tra Queue có rỗng không.
16. Giải thuật sau thực hiện việc gì trong những phương án sau?
Function P(l:ds): boolean; Begin P:= (l.last =0); End; A. Làm rỗng danh sách.
B. Kiểm tra danh sách có rỗng hay không.
C. Cho phần tử cuối cùng trong danh sách bằng 0
D. Không có áp án nào úng.
17. Giải thuật sau thực hiện việc gì trong những phương án sau? Procedure P( l:ds); Begin l.last := 0; End; A. Làm rỗng danh sách.
B. Kiểm tra danh sách có rỗng hay không.
C. Cho phần tử cuối cùng trong danh sách bằng 0.
D. Không có áp án nào úng.
18. Giải thuật sau thực hiện việc gì trong những phương án sau?
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;
A. Bổ sung phần tử x vào ầu danh sách.
B. Bổ sung phần tử x vào cuối danh sách.
C. Chèn phần tử x vào vị trí P trong danh sách. D. Không áp án nào úng.
19. Giải thuật sau thực hiện việc gì trong những phương án sau?
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;
A. Xoá phần tử ầu tiên trong danh sách.
B. Xoá phần tử cuối cùng trong danh sách.
C. Xoá một phần tử tại vị trí P trong danh sách. D. Không áp án nào úng. lOMoAR cPSD| 48641284
20. Theo nguyên tắc hoạt ộng của ngăn xếp (Stack), khi bổ sung nútvào ngăn xếp chính
là bổ sung vào vị trí nào của ngăn xếp?
A. Vị trí áy của ngăn xếp
B. Vị trí ỉnh của ngăn xếp
C. Vị trí bất kỳ của ngăn xếp
D. Vị trí n ược chỉ ịnh
21. Theo nguyên tắc hoạt ộng của ngăn xếp (Stack), khi loại bỏ nút ra khỏi ngăn xếp
chính là loại bỏ nút ở vị trí nào của ngăn xếp?
A. Vị trí áy của ngăn xếp
B. Vị trí ỉnh của ngăn xếp
C. Vị trí bất kỳ của ngăn xếp
D. Vị trí n ược chỉ ịnh
22. Khi muốn thêm một phần tử vào ngăn xếp(Stack), trước ó luôn luôn phải thực hiện công việc gì?
A. Kiểm tra Stack có ầy không
B. Kiểm tra Stack có rỗng không C. Khởi tạo Stack
D. Không phải làm gì, thực hiện việc thêm luôn
23. Khi muốn loại một phần tử ra khỏi ngăn xếp(Stack), trước ó luôn luôn phải thực
hiện công việc gì?
A. Kiểm tra Stack có ầy không
B. Kiểm tra Stack có rỗng không C. Khởi tạo Stack
D. Không phải làm gì, thực hiện việc thêm luôn
24. “Thích hợp lưu trữ các loại dữ liệu mà trình tự truy xuất ngược với trình tự lưu trữ”
là ứng dụng của ối tượng nào? A. Danh sách (List) B. Hàng ợi (Queue) C. Ngăn xếp (Stack)
D. Không có ối tượng nào
25. Thao tác Push(X) dùng trong Stack ể thực hiện việc gì?
A. Thêm phần tử X vào Stack
B. Loại bỏ phần tử X ra khỏi Stack
C. Gán giá trị X cho một phần tử trong Stack
D. Gán giá trị một phần tử trong Stack cho X
26. Thao tác Pop(X) dùng trong Stack ể thực hiện việc gì?
A. Thêm phần tử X vào Stack
B. Loại bỏ phần tử X ra khỏi Stack
C. Gán giá trị X cho một phần tử trong Stack lOMoAR cPSD| 48641284
D. Gán giá trị một phần tử trong Stack cho X
27. Trong lưu trữ dữ liệu kiểu Queue (Q) , giá trị F không thay ổi, giá trị R tăng lên 1
ơn vị khi thực hiện công việc gì? A. Khởi tạo Queue B. Kiểm tra Queue ầy
C. Loại bỏmột phần tử khỏi Queue
D. Thêm một phần tử vào Queue
28. Trong lưu trữ dữ liệu kiểu Queue (Q) , giá trị R không thay ổi, giá trị F tăng lên 1
ơn vị khi thực hiện công việc gì? A. Khởi tạo Queue B. Kiểm tra Queue ầy
C. Loại bỏmột phần tử khỏi Queue
D. Thêm một phần tử vào Queue
29. Cho thủ tục EnQ() thực hiện thêm phần tử vào Queue, thủ tục DeQ() thực hiện loại
bỏ phần tử ra khỏi Queue. Sau khi thực hiện dãy lệnh: EnQ(8), EnQ(12), EnQ(3), DeQ(),
DeQ(), EnQ(7) ược danh sách nào trong Queue?
A. 8, 12, 3, 7 B. 12, 3, 7 C. 3, 7 D. 8, 7
30. Cho thủ tục EnQ() thực hiện thêm phần tử vào Queue, thủ tục DeQ() thực hiện loại
bỏ phần tử ra khỏi Queue. Sau khi thực hiện dãy lệnh nào ể ược danh sách trong Queue là 9, 15, 8?
A. EnQ(9), EnQ(5), DeQ(), EnQ(8), EnQ(15)
B. EnQ(9), DeQ(), EnQ(15), EnQ(8) C. EnQ(15), EnQ(8), EnQ(9)
D. EnQ(4), EnQ(9), DeQ(), EnQ(15), EnQ(8)
31. Yếu tố nào xây dựng nên một chương trình hoàn chỉnh? A.
Dữ liệu tốt, giải thuật ơn giản.
B. Cấu trúc dữ liệu tốt.
C. Giải thuật có thời gian thực hiện nhanh nhất .
D. Cấu trúc dữ liệu thích hợp, giải thuật xử lý hiệu quả .
32. Khái niệm nào là ầy ủ ý nghĩa nhất về giải thuật?
A. Giải thuật cần có một hoặc nhiều dữ liệu ra (output), dữ liệu vào (input).
B. Giải thuật hay còn gọi là thuật toán dùng ể chỉ phương pháp hay cách thức giải quyết vấn
ề (bao gồm một dãy các bước tính toán rõ ràng và chính xác) .
C. Giải thuật là một dãy hữu hạn các bước, tất cả các phép toán có mặt trong các bước của
thuật toán phải ủ ơn giản.
D. Giải thuật là nòng cốt của chương trình. lOMoAR cPSD| 48641284
33. Hãy cho biết âu là ặc trưng của thuật toán trong các phương án sau? A.
Mỗi thuật toán có bộ dữ liệu vào, ra tương ứng.
B. Mỗi bước của thuật toán cần phải ược mô tả một các chính xáC.
C. Thuật toán phải dừng lại sau một số hữu hạn các bước cần thực hiện.
D. Tất cả các ặc trưng ã nêu.
34. Dựa vào yếu tố nào sau ây ể ánh giá "Thời gian thực hiện của giải thuật"? A. Tính xác ịnh. B. Tính dừng.
C. Độ phức tạp tính toán của giải thuật.
D. Thời gian khi chạy chương trình cụ thể.
35. Đâu là tiêu chuẩn ể ánh giá "Độ phức tạp tính toán của giải thuật" ?
A. Dữ liệu ầu vào, dung lượng bộ nhớ B.
Tốc ộ thực thi lệnh của máy
C. Độ phức tạp về thời gian của thuật toán D.
Tất cả các tiêu chuẩn ã nêu
36. "Hãy sắp xếp theo thứ tự tăng dần của cấp thời gian thực hiện chương trình".
Trong các sắp xếp sau, thứ tự nào là úng?
A. O(1), O(nlogn), O(n), O(logn).
B. O(1), O(logn), O(n), O(nlogn).
C. O(nlogn), O(n), O(logn), O(1).
D. O(logn), O(n), O(nlogn), O(1).
37. Độ phức tạp về thời gian của câu lệnh nào ược ánh giá theo nguyên tắc cộng? A. Câu lệnh ghép B. Câu lệnh gán C. Câu lệnh lặp D. Câu lệnh nhảy
38. Độ phức tạp về thời gian của câu lệnh nào ược ánh giá theo nguyên tắc nhân? A. Câu lệnh ghép B. Câu lệnh gán C. Câu lệnh lặp D. Câu lệnh nhảy
39. Độ phức tạp về thời gian của câu lệnh nào ược ánh giá bằng hằng số là O(1)? A. Câu lệnh ghép B. Câu lệnh gán C. Câu lệnh lặp D. Câu lệnh iều kiện
40. "Hãy sắp xếp theo thứ tự giảm dần của cấp thời gian thực hiện chương trình".
Trong các sắp xếp sau, thứ tự nào là úng?
A. O(n2), O(nlogn), O(n), O(logn).
B. O(n2), O(logn), O(n), O(nlogn). lOMoAR cPSD| 48641284
C. O(nlogn), O(n2), O(logn), O(n).
D. O(n2), O(n), O(nlogn), O(logn).
41. Hãy cho biết âu là ặc iểm của giải thuật ệ quy? A. Trong
thủ tục ệ quy có lời gọi ến chính thủ tục ó.
B. Sau mỗi lần có lời gọi ệ quy thì kích thước của bài toán ược thu nhỏ hơn trước.
C. 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. D. Tất cả các ặc iểm ã nêu.
42. Hãy cho biết phát biểu nào là úng về Giải thuật ệ quy?
A. Trong giải thuật của nó có lời gọi tới chính nó nhưng với phạm vi nhỏ hơn.
B. Trong giải thuật của nó có lời gọi tới chính nó nhưng với phạm vi lớn hơn.
C. Trong giải thuật của nó có lời gọi tới một giải thuật khác ã biết kết quả.
D. Trong giải thuật của nó có lời gọi tới một giải thuật khác có thể là chính nó.
43. Giả sử T1(n) và T2(n) là thời gian thực hiện của hai giai oạn chương trình P1 và P2
mà T1(n) = O(f(n)); T2(n) = O(g(n)). Theo qui tắc tổng xác ịnh ộ phức tạp tính toán của
giải thuật thì thời gian thực hiện oạn P1 rồi ến P2 là phương án nào sau ây?

A. T1(n) + T2(n) = O((f(n)+g(n))).
B. T1(n) + T2(n) = O(max(f(n),g(n))).
C. T1(n) + T2(n) = O(Min(f(n),g(n))).
D. T1(n) + T2(n) = O((f(n) or g(n))).
44. Trong một chương trình có 3 bước thực hiện nối tiếp, mà thời gian thực hiện từng
bước lần lượt là O(n^2), O(n^3) và O(nlogn). Cho biết thời gian thực hiện của chương
trình là bao nhiêu trong các phương án sau?
A. O(n^2)+ O(n^3) + O(nlogn). B. O(n^2). C. O(n^3). D. O(nlogn).
45. Nếu tương ứng với P1 và P2 là T1(n) = O(f(n)), T2(n) = O(g(n)) thì thời gian thực
hiện P1 và P2 lồng nhau sẽ là bao nhiêu trong các phương án sau? A. T1(n)T2(n) = O(f(n)+g(n)). B. T1(n)T2(n) = O(f(n).g(n)).
C. T1(n)T2(n) = O(f(n)and g(n)). D. T1(n)T2(n) = O(f(n)/g(n)).
46. Thời gian thực hiện các lệnh Read(n), Write(n) là bao nhiêu trong các phương án sau? A. O(1). B. O(2). C. O(logn). D. O(n).
47. Hãy chọn phương án úng về ộ phức tạp thời gian thực hiện câu lệnh (1)? lOMoAR cPSD| 48641284
function Euclid (m, n : integer) :integer;
var r : integer ; begin r :=
m mod n; (1) while r<> 0 do (2) begin m := n; (3) n :=r; (4) r := m mod n; (5) end; Euclid := n; (6) end; A. O(n) B. O(2) C. O(m) D. O(1)
48. Hãy chọn phương án úng về ộ phức tạp thời gian thực hiện câu lệnh (1)?
Procedure InSo(n : integer);
var i : integer ; Begin for i:=1 to n do (1) if (i
mod 2 =0) then (2) write(i,“ ”); (3) end;
A. O(n) B. O(1) C. O(2) D. O(n^2)
49. Cho oạn chương trình sau: Function UCLN (m,n) Begin Read(m); Read(n) (1) While m<>n do (2)
If m>n then m:=m-n else n:=n-m (3) UCLN:=m (4) Write(USCLN) End;
Sắp xếp thứ tự ộ phức tạp thời gian của các dòng lệnh trên theo thứ tự tăng dần. Hãy
cho biết sắp xếp nào là úng? A. (1), (3), (2), (4) B. (4), (2), (3), (1) C. (4), (1), (3), (2) D. (1), (3), (4), (2) ANSWER: C
50. Hãy cho biết mỗi lần gọi ệ quy thì giá trị của n sẽ thế nào trong hàm ệ qui sau? Function Factorial(n) lOMoAR cPSD| 48641284 Begin
if n= 0 then Factorial:=1
else Factorial := n*Factorial(n-1); End; A. Giảm 1. B. Tăng 1. C. N=0. D. N=1.
51. Cho hàm ệ qui sau, chọn phương án úng về tác dụng của dòng lệnh “if n=0 then Factorial:=1” ?
Function Factorial(n) Begin
if n=0 then Factorial:=1
else Factorial := n*Factorial(n-1); End;
A. Điều kiện không thực hiện ệ quy. B. Lặp vô hạn.
C. Điều kiện dừng ệ quy. D. Lặp 1 lần.
52. Hàm ệ qui sau giải bài toán gì sau ây? Function A(n) Begin
if n= 0 then A:=1 else A := n*A(n-1); End;
A. Tính số cặp thỏ sau n tháng. B. Tính n^n (n mũ n). C. Tính giai thừa n. D. Không có áp án úng
53. Hàm ệ qui sau cho kết quả nào sau ây khi n=4? Function A(n) Begin if n= 0 then A:=1 else A := n*A(n-1); End; A. 6 B. 24 C. 12 D. 8
54. Hàm ệ qui cho kết quả nào sau ây khi n=6?
Function F(n:integer):integer; Begin if n<=2 then F:=1
else F := F(n-2) + F(n-1) End; A. 8 lOMoAR cPSD| 48641284 B. 6 C. 10 D. 11
55. Cho giải thuật ệ quy của bài toán Tháp Hà Nội, chọn phương án úng về số bước chuyển ĩa khi n=4?
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; A. 14 bước. B. 8 bước. C. 16 bước. D. 15 bước.
56. Hãy cho biết dòng lệnh nào thực hiện lệnh ệ quy trong hàm sau:
Function A(n:integer):integer Begin (1) if n<=2 then A:=1 (2) else (3) A := A(n-2) + A(n-1); (4) End; A. Dòng lệnh số 1. B. Dòng lệnh số 2. C. Dòng lệnh số 3. D. Dòng lệnh số 4.
57. Cho giải thuật ệ quy của bài toán "Tháp Hà Nội", Procedure Chuyen(n, A, B, C) Begin (1)
if n=1 then chuyển ĩa từ A sang C (2)
else begin (4) call Chuyen(n- (3)
1, A, C, B); (5) call Chuyen(1, A, B,
C); (6) call Chuyen(n-1, B, A, C) ; (7) end; (8)
End; (9)
Dòng lệnh nào gọi là lệnh suy biến? A. Dòng lệnh số 5. lOMoAR cPSD| 48641284 B. Dòng lệnh số 2. C. Dòng lệnh số 6. D. Dòng lệnh số 8.
58. Hãy cho biết dòng lệnh nào là iều kiện dừng ệ quy trong hàm sau? Function Factorial(n) Begin (1)
if n= 0 then Factorial:=1 (2)
else Factorial := n*Factorial(n-1); (3) End; (4) A. Dòng lệnh số 1. B. Dòng lệnh số 2. C. Dòng lệnh số 3. D. Dòng lệnh số 4.
59. Để diễn ạt giải thuật, không sử dụng ược phương pháp nào?
A. Dùng ngôn ngữ tự nhiên ể liệt kê từng bước
B. Sử dụng các hình quy ước ể vẽ sơ ồ
C. Dùng ngôn ngữ lập trình C D. Vẽ biểu ồ
60. Sử dụng ngôn ngữ lập trình ể diễn ạt giải thuật có nhược iểm gì?
A. Không thể hiện ược giải thuật
B. Phụ thuộc ngữ nghĩa, cú pháp gò bó
C. Cho kết quả không chính xác D. Tất các ý ã nêu