SlideShare a Scribd company logo
1 of 54
Download to read offline
Studocu is not sponsored or endorsed by any college or university
Trắc nghiệm cấu trúc dữ liệu và giải thuật
marketing (Trường Đại học Kinh tế - Kỹ thuật Công nghiệp)
Studocu is not sponsored or endorsed by any college or university
Trắc nghiệm cấu trúc dữ liệu và giải thuật
marketing (Trường Đại học Kinh tế - Kỹ thuật Công nghiệp)
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
Cấu trúc dữ liệu và giải thuật - TH24.01
Phần 1:
Câu 1: Giải thuật đệ quy là:
 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ả.
 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.
 Trong giải thuật của nó có lời gọi tới chính nó.
 *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.
Câu 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à:
 Tăng lên 1
 N=0
 *Giảm đi 1
 N=1
Câu 3: Có 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à:
 Lặp vô hạn
 *Điều kiện dừng đệ quy
 Điều kiện không thực hiện đệ quy
 Lặp 1 lần
Câu 4: Có 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;
 Tính số cặp thỏ sau n tháng
 *Tính giai thừa n
 Tính n^n (n mũ n).
 Tính tích: 1*2*3*…*n
Câu 5: Có Hàm đệ qui sau:
Function Factorial(n)
Begin
if n=0 then Factorial:=1
else Factorial := n*Factorial(n-1);
End;
Kết quả bằng bao nhiêu khi n=3
 *6
 9
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
 2
 8
Câu 6: Hàm đệ qui cho kết quả thế nào?
Function Factorial(n)
Begin
Factorial := n*Factorial(n-1);
End;
 *Lặp vô hạn vì không có điều kiện dừng
 Tính giai thừa n
 Tính số cặp thỏ sau n tháng.
 Chương trình báo lỗi
Câu 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?
 9 cặp
 *5 cặp
 12 cặp
 10 cặp
Câu 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ò:
 *Điều kiện dừng đệ quy
 Lặp 1 lần
 Điều kiện không thực hiện đệ quy
 Lặp vô hạn
Câu 9: Cho giải thuật đệ quy sau:
Function F(n:integer):integer;
Begin
if n<=2 then F:=1
else F := F(n-2) + F(n-1)
End;
Khi n=4 kết quả của bài toán trên là:
 *3
 8
 11
 10
Câu 10: Đặc điểm của giải thuật đệ quy:
 *Tất cả đều đúng
 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 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
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
 Trong thủ tục đệ quy có lời gọi đến chính thủ tục đó
Câu 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?
 8 bước
 14 bước
 *15 bước
 16 bước
Câu 12: Danh sách tuyến tính là:
 Danh sách tuyến tính là một danh sách có dạng (a1, a2, ..., an).
 *Danh sách mà quan hệ lân cận giữa các phần tử được xác định.
 Danh sách dạng được lưu dưới dạng mảng.
 Danh sách tuyến tính là một danh sách rỗng.
Câu 13: ưu điểm của việc cài đặt danh sách bằng mảng:
 *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ử.
 Có thể thay đổi số lượng phần tử theo ý muốn của người dùng.
 Có thể bổ sung hoặc xóa một phần tử bất kỳ trong mảng.
 Tất cả các ý trên đều đúng.
Câu 14: Danh sách tuyến tính dạng ngăn xếp là:
 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.
 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.
 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.
 *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 .
Câu 15: Danh sách tuyến tính dạng ngăn xếp làm việc theo nguyên tắc:
 FIFO( first in first out)
 LILO(last in last out)
 FOLO( fisrt out last out)
 *LIFO(last in first out)
Câu 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:
 Mảng (array)
 Hàng đợi(Queue)
 *Ngăn xếp (stack)
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
 Bản gCâu Record)
Câu 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.
 *ứng dụng ngăn xếp để đổi số N từ cơ số 10 sang cơ số 2
 ứng dụng ngăn xếp để tính số dư trong phép chia N cho 2
 ứng dụng ngăn xếp để Đưa giá trị N vào ngăn xếp và lấy ra giá trị N
 ứng dụng ngăn xếp để thay N bằng thương của phép chia N cho 2
Câu 18: định nghĩa danh sách tuyến tính Hàng đợi (Queue)
 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.
 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.
 *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).
 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âu 19: Hàng đợi còn được gọi là danh sách kiểu:
 LOLO
 FILO
 LIFO
 *FIFO
Câu 20: Để thêm một đối tượng x bất kỳ vào Stack, thao tác thường dùng là:
 EMPTY(x).
 TOP(x).
 *PUSH(x).
 POP(x).
Câu 21: Để lấy loại bỏ một đối tượng ra khỏi Stack, thao tác thường dùng là: “
 FULL(x)
 EMPTY(x)
 *POP(x)
 PUSH(x)
Câu 22: Để biểu diễn Stack, ta thường sử dụng kiểu dữ liệu nào sau đây?
 Kiểu bản ghi
 *Danh sách móc nối và mảng dữ liệu
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
 Danh sách móc nối
 Mảng dữ liệu
Câu 23: Thao tác POP(x) dùng trong Stack là để:
 Xóa bỏ một phần tử bất kì khỏi Stack
 Xóa bỏ một dãy các phần tử ra khỏi Stack
 Lấy phần tử đầu tiên ra khỏi Stack
 *Lấy một phần tử cuối cùng ra khỏi đỉnh Stack
Câu 24: Thao tác Push(x) dùng trong Stack là để:
 Bổ sung một dãy các phần tử vào đỉnh Stack.
 Bổ sung một phần tử bất kì vào Stack
 *Bổ sung một phần tử vào đỉnh Stack
 Bổ sung một phần tử vào đầu Stack
Câu 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?
 POP(23),PUSH(25).
 POP(25),PUSH(23)
 *POP(25),POP(23), PUSH(25)
 POP(25),POP(23)
Câu 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ứ 5 trong Stack ta phải làm thế nào?
 POP(25),POP(23), PUSH(23)
 *POP(25)
 POP(23),PUSH(25)
 POP(25),PUSH(23)
Câu 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ứ 3 trong Stack ta phải làm thế nào?
 *POP(25), POP(23), POP(20), PUSH(23), PUSH(25)
 POP(25), POP(23), PUSH(20), PUSH(25), PUSH(23)
 POP(25), POP(23), POP(20)
 POP(25), POP(23), POP(20), PUSH(25), PUSH(23)
Câu 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;
 Kiểm tra Stack có tràn không
 Kiểm tra Stack có cạn không
 *Bổ sung một phần tử vào Stack
 Loại bỏ một phân tử ra khỏi Stack
Câu 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;
 TOP
 FULL
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
 POP
 *PUSH
Câu 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;
 Bổ sung một phần tử ra khỏi Stack
 Kiểm tra Stack có cạn không
 *Loại bỏ một phần tử vào Stack
 Kiểm tra Stack có tràn không
Câu 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;
 NULL
 PUSH
 TOP
 *POP
Câu 32: Với đoạn mã sau, nếu n=13, trong Stack sẽ là:
While n<>0 do
begin
R:=n mod 2;
Push(R);
n:=n div 2;
end;
 13
 6
 *1101
 1011
Câu 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 , 3 , 6
 1 , 1 , 0 , 1
 *1 , 0 , 1 , 1
 6 , 3 , 1
Câu 34: 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?
While T>0 do
begin
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
R:=POP(S[T]);
write(R);
end;
 1011
 1101
 *1, 0 , 1 , 1
 1, 1 , 0 , 1
Câu 35: 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à:
 *Queue rỗng
 Kiểm tra chỉ số trước và chỉ số sau của Queue có bằng nhau không.
 Queue tràn
 Đặt phần tử đầu và phần tử cuối của Queue bằng 0
Câu 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?
 F=F+1, R không thay đổi
 *F không thay đổi, R=R+1
 F=F-1, R không thay đổi
 F không thay đổi, R=R-1
Câu 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ử vào Queue, thì R và F thay đổi thế nào?
 F=F-1, R không thay đổi
 F không thay đổi, R=R+1
 F không thay đổi, R=R-1
 *F=F+1, R không thay đổi
Câu 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;
 Kiểm tra Queue có rỗng không
 Loại bỏ một phần tử vào Queue
 *Bổ sung một phần tử vào Queue
 Kiểm tra Queue có tràn không
Câu 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;
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
return
end;
if F=n then F:=1
else F:=F+1;
Q:=Y;
End;
 Bổ sung một phần tử vào Queue
 Kiểm tra Queue có tràn không
 *Loại bỏ một phần tử vào Queue
 Kiểm tra Queue có rỗng không
Câu 40: Giải thuật sau thực hiện việc gì?
Function P(l:ds): boolean;
Begin
P:= (l.last =0);
End;
 *Kiểm tra danh sách có rỗng không
 Cho phần tử cuối cùng trong danh sách bằng 0
 Làm rỗng danh sách
 Không có đáp án nào đúng.
Câu 41: Giải thuật sau thực hiện việc gì?
Procedure P( l:ds);
Begin
l.last := 0;
End;
 Cho phần tử cuối cùng trong danh sách bằng 0
 Kiểm tra danh sách có rỗng không
 *Làm rỗng danh sách”
 Không có đáp án nào đúng.
Câu 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;
 *Chèn phần tử x vào vị trí P trong danh sách
 Bổ sung phần tử x vào đầu danh sách
 Bổ sung phần tử x vào cuối danh sách
 Không đáp án nào đúng
Câu 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;
 Không đáp án nào đúng
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
 Xoá phần tử cuối cùng trong danh sách
 *Xoá một phần tử tại vị trí P trong danh sách
 Xoá phần tử đầu tiên trong danh sách
Câu 44: Trong biểu diễn dữ liệu dưới dạng cây, cấp của cây chính
 Tổng số nút trên cây
 Cấp cao nhất của nút gốc
 Cấp cao nhất của nút lá
 *Cấp cao nhất của một nút trên cây
Câu 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à:
 *Lá
 Không có đáp án nào đúng
 Phần tử cuối cùng trong cây
 Gốc
Câu 46: Mỗi nút trong cây có tối đa:
 3 nút con
 1 nút con
 2 nút con
 *Nhiều nút con
Câu 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à:
 2*i + 1
 i+1
 *2*i
 i-1
Câu 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à:
 2*i
 i+1
 i-1
 *2*i + 1
Câu 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à:
 6
 7
 4
 *6 và 7
Câu 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à:
 7
 *6
 2
 4
Câu 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à:
 *7
 4
 6
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
 2
Câu 53: Duyệt cây nhị phân theo thứ tự trước được thực hiện theo thứ tự:
 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.
 *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.
 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.
 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.
Câu 54: Duyệt cây nhị phân theo thứ tự giữa được thực hiện theo thứ tự:
 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.
 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.
 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.
 *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.
Câu 55: Duyệt cây nhị phân theo thứ tự sau được thực hiện theo thứ tự:
 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.
 Thăm gốc, duyệt cây con trái theo thứ tự sau, duyệt cây con phải theo thứ tự sau.
 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.
 *Duyệt cây con trái theo thứ tự sau, duyệt cây con phải theo thứ tự sau, thăm gốc.
Phần 2:
Câu 1: ý tưởng phương pháp sắp xếp chọn tăng dần (select sort)
 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.
 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.
 *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...
 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.
Câu 2: ý tưởng phương pháp sắp xếp nổi bọt (bubble sort) là:
 *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.
 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.
 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.
 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...
Câu 3: ý tưởng phương pháp sắp xếp chèn (insertion sort) là:
 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.
 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...
 *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.
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
 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.
Câu 4: ý tưởng phương pháp sắp xếp nhanh (Quick sort) là:
 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...
 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.
 *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á).
 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.
Câu 5: Phương pháp sắp xếp nhanh (Quick sort) chính là phương pháp:
 *Phân đoạn
 Chèn
 Trộn
 Vun đống
Câu 6: ý tưởng phương pháp sắp xếp Trộn (Merge sort) là:
 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.
 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á).
 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...
 *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.
Câu 7: ý tưởng phương pháp sắp xếp vun đống (Heap sort) là:
 *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.
 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.
 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á).
 Tạo đống cho cây nhị phân (cây nhị phân đã được sắp xếp giảm dần).
Câu 8: Cơ chế heap trong sắp xếp vun đống là:
 *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.
 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.
 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.
 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.
Câu 9: Trong giải thuật sắp xếp vun đống, ta có 4 thủ tục con (Insert - thêm 1 phần tử vào
cây;Downheap - vun đống lại sau khi loại một phần tử khỏi Heap, Upheap- vun đống sau khi
thêm một phần tử vào cây; Remove - loại 1 phần tử khỏi cây nhị phân). Để sắp xếp các phần
tử trong dãy theo phương pháp vun đống, ta thực hiện 4 thủ tục trên theo thứ tự như thế nào?
 *Insert – Upheap – Remove – Downheap
 Remove – Downheap – Insert – Upheap
 Insert – Upheap – Downheap – Remove
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
 Upheap – Downheap – Remove – Insert
Câu 10: Tư tưởng của giải thuật tìm kiếm nhị phân:
 *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.
 Tìm kiếm dựa vào cây nhị tìm kiếm.
 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.
 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.
Câu 11: Tư tưởng của giải thuật tìm kiếm tuần tự
 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.
 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.
 *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.
 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.
Câu 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
 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.
 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.
 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.
 *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.
Câu 13: Cây nhị phân tìm kiếm là:
 *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 trái và lớn hơn mọi nút trên cây con phảI của nó.
 Là cây nhị phân đầy đủ.
 Cây nhị phân thoả tính chất heap
 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.
Câu 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ị"?
 Quick sort, Heap sort
 Qucick sort, Insert sort
 Quick sort, Bubble sort
 *Quick sort, Merge sort
Câu 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
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
if a[j] < a[j-1] then
begin tg:=a[j]; a[j]:=a[j-1]; a[j-1]:=tg; end;
End;
 Merge sort
 insert sort
 *Bubble sort
 Select sort
Câu 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 x<="" br="">begin a*[j+1]:=a*[j]; j:=j-1; end;
a[j+1]:=x;
end;
End;
 *Insert sort”
 Merge sort
 Bubble sort
 Select sort
Câu 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
i:=k; i:=b; j:=m+1;
while i<=m and j<=n do
if x[i] <=x[j] then
begin z[k]:=x[i]; i:=i+1; end
else begin z[k]:=x[j]; j:=j+1; end;
k:=k+1;
if i>m then (zk,…,zn):= (xj,…,xn)
else (zk,…,zn):= (xi,…,xn)
End;
 Bubble sort
 Insert sort
 Select sort
 *Merge sort
Câu 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<="" br="">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);
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
cal F(a, j+1,s);
end;
End;
 *Quick sort
 Insert sort
 Merge sort
 Bubble sort
Câu 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à:
 {0 1 2 6 5 7 9 3 4 8}
 {0 1 2 6 5 7 9 3 8 4}
 {0 1 2 3 4 5 6 7 8 9}
 *{0 1 3 6 5 7 9 2 8 4}
Câu 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à:
 {0 1 2 3 4 5 6 7 8 9}
 *{0 1 2 6 5 7 9 3 8 4}
 {0 1 2 6 5 7 9 3 4 8}
 {0 1 2 3 6 5 7 9 8 4}
Câu 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à:
 {0 1 2 3 4 5 6 7 8 9}
 *{0 1 2 3 5 7 9 6 8 4}
 {0 1 2 3 5 7 9 4 8 6}
 {0 1 2 3 6 5 7 9 8 4}
Câu 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à:
 {0 1 2 3 4 5 6 7 8 9}
 {0 1 2 3 5 7 9 4 8 6}
 *{0 1 2 3 4 7 9 6 8 5}
 {0 1 2 3 6 5 7 9 8 4}
Câu 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à:
 {0 1 2 3 4 5 6 9 8 7}
 {0 1 2 3 4 5 6 7 8 9}
 {0 1 2 3 4 7 9 6 8 5}
 *{0 1 2 3 4 5 9 6 8 7}
Câu 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à:
 {0 1 2 3 4 5 9 6 8 7}
 {0 1 2 3 4 5 6 7 8 9}
 *{0 1 2 3 4 5 6 9 8 7}
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
Câu 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à:
 *{0 1 2 3 4 5 6 7 8 9}
 {0 1 2 3 4 5 6 9 8 7}
 {0 1 2 3 4 5 9 6 8 7}
Câu 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à:
 {0 1 2 3 4 7 5 9 6 8}
 {0 1 2 4 7 3 9 5 6 8}
 {0 4 7 1 9 2 5 3 6 8}
 *{0 1 4 7 2 9 3 5 6 8}
Câu 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à:
 *{0 1 2 4 7 3 9 5 6 8}
 {0 1 4 7 2 9 3 5 6 8}
 {0 4 7 1 9 2 5 3 6 8}
 {0 1 2 3 4 7 5 9 6 8}
Câu 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à:
 {0 1 2 3 4 7 9 5 6 8}
 {0 1 2 4 7 3 9 5 6 8}
 {0 1 4 7 2 9 3 5 6 8}
 *{0 1 2 3 4 7 5 9 6 8}
Câu 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à:
 {0 1 4 7 2 9 3 5 6 8}
 {0 1 2 4 7 3 9 5 6 8}
 *{0 1 2 3 4 5 7 6 9 8}
 {0 1 2 3 4 7 9 5 6 8}
Câu 30: Cho dãy số {4 0 2 8 5 9 6 1 3 7}. áp dụng phương pháp sắp xếp chèn (Insert sort) sau
lần lặp đầu tiên của giải thuật ta có kết quả:{0 4 2 8 5 9 6 1 3 7}. Dãy số thu được sau lần lặp
thứ hai là:
 *{0 2 4 8 5 9 6 1 3 7}
 {0 1 4 8 5 9 6 1 3 7}
 {0 1 2 8 5 9 6 4 3 7}
 {0 4 2 8 5 9 6 1 3 7}
Câu 31: Cho dãy số {4 0 2 8 5 9 6 1 3 7}. áp dụng phương pháp sắp xếp chèn (Insert sort) sau
lần lặp đầu tiên của giải thuật ta có kết quả:{0 4 2 8 5 9 6 1 3 7}. Dãy số thu được sau lần lặp
thứ ba là:
 {0 1 2 8 5 9 6 4 3 7}
 *{0 2 4 8 5 9 6 1 3 7}
 {0 2 3 8 5 9 6 1 4 7}
 {0 2 4 5 8 9 6 1 3 7}
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
Câu 32: Cho dãy số {4 0 2 8 5 9 6 1 3 7}. áp dụng phương pháp sắp xếp chèn (Insert sort) sau
lần lặp đầu tiên của giải thuật ta có kết quả:{0 4 2 8 5 9 6 1 3 7}. Dãy số thu được sau lần lặp
thứ bốn là:
 *{0 2 4 5 8 9 6 1 3 7}
 {0 1 2 3 5 9 6 4 8 7}
 {0 1 2 8 5 9 6 4 3 7}
 {0 4 2 8 5 9 6 1 3 7}
Câu 33: Cho dãy số {4 0 2 8 5 9 6 1 3 7}. áp dụng phương pháp sắp xếp chèn (Insert sort) sau
lần lặp đầu tiên của giải thuật ta có kết quả:{0 4 2 8 5 9 6 1 3 7}. Dãy số thu được sau lần lặp
thứ năm là:
 {0 1 2 3 5 9 6 4 8 7}
 {0 1 2 8 5 9 6 4 3 7}
 *{0 2 4 5 8 9 6 1 3 7}
 {0 1 2 4 5 8 9 6 3 7}
Câu 34: Cho dãy số {4 0 2 8 5 9 6 1 3 7}. áp dụng phương pháp sắp xếp chèn (Insert sort) sau
lần lặp đầu tiên của giải thuật ta có kết quả:{0 4 2 8 5 9 6 1 3 7}. Dãy số thu được sau lần lặp
thứ sáu là:
 *{0 2 4 5 6 8 9 1 3 7}
 {0 1 2 3 5 9 6 4 8 7}
 {0 2 4 5 8 9 6 1 3 7}
 {0 1 2 4 5 8 9 6 3 7}
Câu 35: Cho dãy số {4 0 2 8 5 9 6 1 3 7}. áp dụng phương pháp sắp xếp chèn (Insert sort) sau
lần lặp đầu tiên của giải thuật ta có kết quả:{0 4 2 8 5 9 6 1 3 7}. Dãy số thu được sau lần lặp
thứ bảy là:
 {0 1 2 3 5 9 6 4 8 7}
 {0 2 4 5 8 9 6 1 3 7}
 *{0 1 2 4 5 6 8 9 3 7}
 {0 1 2 4 5 8 9 6 3 7}
Câu 36: Cho dãy số {4 0 2 8 5 9 6 1 3 7}. áp dụng phương pháp sắp xếp chèn (Insert sort) sau
lần lặp đầu tiên của giải thuật ta có kết quả:{0 4 2 8 5 9 6 1 3 7}. Dãy số thu được sau lần lặp
thứ tám là:
 {0 1 2 4 5 6 8 9 3 7}
 {0 1 2 3 4 5 6 7 8 9}
 *{0 1 2 3 4 5 6 8 9 7}
 {0 1 2 3 4 5 8 9 6 7}
Câu 37: Cho dãy số {4 0 2 8 5 9 6 1 3 7}. áp dụng phương pháp sắp xếp chèn (Insert sort) sau
lần lặp đầu tiên của giải thuật ta có kết quả:{0 4 2 8 5 9 6 1 3 7}. Dãy số thu được sau lần lặp
thứ chín là:
 {0 1 2 4 5 6 8 9 3 7}
 {0 1 2 3 4 5 8 9 6 7}
 *{0 1 2 3 4 5 6 7 8 9}
 {0 1 2 3 4 5 6 8 9 7}
Câu 38: Cho dãy số {3 1 6 0 5 4 8 2 9 7}. áp dụng phương pháp sắp xếp nhanh (Quick sort)
sau lần lặp đầu tiên của giải thuật ta có kết quả: {(0 1 2) 3 (5 4 8 6 9 7)}. Dãy số thu được sau
lần lặp thứ hai là:
 *{0 (1 2) 3 (5 4 8 6 9 7)}
 {(0 1 2 3) 4 (5 6 7 8 9)}
 {(0 1 2) 3 (5 4 8 6 9 7)}
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
 {(3 1 6 0) 5 (4 8 2 9 7)}
Câu 39: Cho dãy số {3 1 6 0 5 4 8 2 9 7}. áp dụng phương pháp sắp xếp nhanh (Quick sort)
sau lần lặp đầu tiên của giải thuật ta có kết quả: {(0 1 2) 3 (5 4 8 6 9 7)}. Dãy số thu được sau
lần lặp thứ ba là:
 {(0) 1 (2 3) 4 (5 6) 7 (8 9)}
 {(3) 1 (6 0) 5 (4 8) 2 (9 7)}
 *{0 1 (2) 3 (5 4 8 6 9 7)}
 {0 1 (2) 3 (5 4) 8 (6 9 7)}
Câu 40: Cho dãy số {3 1 6 0 5 4 8 2 9 7}. áp dụng phương pháp sắp xếp nhanh (Quick sort)
sau lần lặp đầu tiên của giải thuật ta có kết quả: {(0 1 2) 3 (5 4 8 6 9 7)}. Dãy số thu được sau
lần lặp thứ bốn là:
 {(0) 1 (2 3) 4 (5 6) 7 (8 9)}
 {0 1 (2) 3 (5 4) 8 (6 9 7)}
 {(3) 1 (6 0) 5 (4 8) 2 (9 7)}
 *{0 1 2 3 (5 4 8 6 9 7)}
Câu 41: Cho dãy số: 12 2 8 5 1 6 4 15 và các bước sắp xếp sau:
Bước 1: 1 2 8 5 12 6 4 15
Bước 2: 1 2 8 5 12 6 4 15
Bước 3: 1 2 4 5 12 6 8 15
Bước 4: 1 2 4 5 12 6 8 15
Bước 5: 1 2 4 5 6 12 8 15
Bước 6: 1 2 4 5 6 8 12 15
Các bước trên dựa theo giải thuật sắp xếp nào?
 Quick sort
 Insert sort
 Bubble sort
 *Select sort
Câu 42: Cho dãy số: "4 7 0 9 2 5 3 1 8 6" và các bước sắp xếp sau:
Bước 1: 0 4 7 1 9 2 5 3 6 8”
Bước 2: 0 1 4 7 2 9 3 5 6 8
Bước 3: 0 1 2 4 7 3 9 5 6 8
Bước 4: 0 1 2 3 4 7 5 9 6 8
Bước 5: 0 1 2 3 4 5 7 6 9 8
Bước 6: 0 1 2 3 4 5 6 7 8 9
Các bước trên dựa theo giải thuật sắp xếp nào?
 *Bubble sort
 Select sort
 Quick sort
 Insert sort
Câu 43: Cho dãy số: "5 1 4 2 7 3" và các bước sắp xếp sau:
Bước 1: 1 5 4 2 7 3”
Bước 2: 1 4 5 2 7 3
Bước 3: 1 2 4 5 7 3
Bước 4: 1 2 4 5 7 3
Bước 5: 1 2 3 4 5 7
Các bước trên dựa theo giải thuật sắp xếp nào?
 Quick sort
 Select sort
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
 Bubble sort
 *Insert sort
Câu 44: Cho dãy số "3 1 6 0 5 4 8 2 9 7" và các bước sắp xếp sau:
Bước 1: (0 1 2) 3 (5 4 8 6 9 7)
Bước 2: 0 (1 2) 3 (5 4 8 6 9 7)
Bước 3: 0 1 (2) 3 (5 4 8 6 9 7)
Bước 4: 0 1 2 3 (5 4 8 6 9 7)
Bước 5: 0 1 2 3 (4) 5 (8 6 9 7)
Bước 6: 0 1 2 3 4 5 (8 6 9 7)
Bước 7: 0 1 2 3 4 5 (7 6) 8 (9)
Bước 8: 0 1 2 3 4 5 (6) 7 8 (9)
Bước 9: 0 1 2 3 4 5 6 7 8 (9)
Bước 10: 0 1 2 3 4 5 6 7 8 9
Các bước trên dựa theo giải thuật sắp xếp nào?
 Merge sort
 *Quick sort
 Select sort
 Insert sort
Câu 45: Cho dãy số : 3 1 6 0 5 4 8 2 9 7 và các bước sắp xếp sau:
Bước 1: 1 3 6 0 5 4 8 2 9 7
Bước 2: 1 3 6 0 5 4 8 2 9 7
Bước 3: 1 3 6 0 5 4 8 2 9 7
Bước 4: 0 1 3 5 6 4 8 2 9 7
Bước 5: 0 1 3 5 6 4 8 2 9 7
Bước 6: 0 1 3 5 6 2 4 8 9 7
Bước 7: 0 1 3 5 6 2 4 8 7 9
Bước 8: 0 1 3 5 6 2 4 7 8 9
Bước 9: 0 1 2 3 4 5 6 7 8 9
Các bước trên dựa theo giải thuật sắp xếp nào?
 Quick sort
 *Merge sort
 Select sort
 Insert sort
Câu 46: Cho dãy số : 3 1 6 0 5 4 8 2 9 7 và các bước sắp xếp sau:
Bước 1: 1 3 0 6 4 5 2 8 7 9
Bước 2: 0 1 3 6 2 4 5 8 7 9
Bước 3: 0 1 2 3 4 5 6 8 7 9
Bước 4: 0 1 2 3 4 5 6 7 8 9
Các bước trên dựa theo giải thuật sắp xếp nào?
 Quick sort
 Select sort
 Merge sort
 *Merge sort hai đường trực tiếp
Câu 47: Giải thuật sau thực hiện việc gì trong phương pháp sắp xếp vun đống?
Procedure F(v: integer)
Begin
n:=n+1;
a[n]:=v;
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
upheap(n);
end;
 *Bổ sung một phần tử vào cây
 Loại bỏ một phần tử ra khỏi cây
 Vun đống lại cho cây sau khi loại bỏ một phần tử
 Vun đống cho cây sau khi bổ sung một phần tử
Câu 48: Giải thuật sau thực hiện việc gì trong phương pháp sắp xếp vun đống?
Procedure Upheap(k:integer);
Begin
V:=a[k]; a[0]:=maxint;
while a[k div 2] <= v do
begin a[k]:= a[k div 2]; k:=k div 2; end;
a[k]:=v;
End;
 Vun đống cho cây sau khi loại bỏ phần tử
 Bổ sung một phần tử vào cây
 *Vun đống cho cây sau khi thêm một phần tử
 Loại bỏ một phần tử ra khỏi cây
Câu 49: Giải thuật sau thực hiện việc gì trong phương pháp sắp xếp vun đống?
Procedure Downheap(k:integer)
Label 0;
Begin
v:=a[k];
While k<= n div 2 do
begin j:=k*2;
if a[j]if v>=a[j] then goto 0;
a[k]:=a[j]; k:=j;
end;
0: a[k]:=v;
End;
 Bổ sung một phần tử vào cây
 Loại bỏ một phần tử ra khỏi cây
 Vun đống cho cây sau khi bổ sung phần tử
 *Vun đống lại cho cây sau khi loại bỏ một phần tử
Câu 50: Giải thuật sau thực hiện việc gì trong phương pháp sắp xếp vun đống?
Function P: integer;
Begin
P:=a[1];
a[1]:=a[n];
n: =n-1;
Downheap(1);
End;
 Vun đống cho cây sau khi bổ sung phần tử
 Vun đống lại cho cây sau khi loại bỏ một phần tử
 Bổ sung một phần tử vào cây
 *Loại bỏ một phần tử ra khỏi cây
Phần 3:
Câu 1: Cho dãy số sau: 40 25 75 15 65 55 90 30 95 85. Áp dụng phương pháp sắp xếp lựa
chọn, sau lượt 1 dãy sẽ được sắp xếp lại như thế nào?
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
 15 40 25 30 75 65 55 85 90 95
 *15 25 75 40 65 55 90 30 95 85
 40 25 75 15 30 65 55 90 85 95
 15 25 40 75 30 55 65 90 85 95
Câu 2: Cho dãy số sau: 40 25 75 15 65 55 90 30 95 85. Áp dụng phương pháp sắp xếp lựa
chọn, sau lượt 2 dãy sẽ được sắp xếp lại như thế nào?
 15 40 25 30 75 65 55 85 90 95
 *15 25 75 40 65 55 90 30 95 85
 15 40 25 75 30 55 65 90 85 95
 15 25 75 30 40 65 55 90 85 95
Câu 3: Cho dãy số sau: 40 25 75 15 65 55 90 30 95 85. Áp dụng phương pháp sắp xếp lựa
chọn, sau lượt 3 dãy sẽ được sắp xếp lại như thế nào?
 15 25 75 30 40 65 55 90 85 95
 15 40 25 30 75 65 55 85 90 95
 *15 25 30 40 65 55 90 75 95 85
 15 40 25 30 75 55 65 90 85 95
Câu 4: Cho dãy số sau: 40 25 75 15 65 55 90 30 95 85. Áp dụng phương pháp sắp xếp lựa
chọn, sau lượt 4 dãy sẽ được sắp xếp lại như thế nào?
 15 40 25 75 30 55 65 90 85 95
 15 25 75 30 40 65 55 90 85 95
 *15 25 30 40 65 55 90 75 95 85
 15 40 25 30 75 65 55 85 90 95
Câu 5: Cho dãy số sau: 40 25 75 15 65 55 90 30 95 85. Áp dụng phương pháp sắp xếp nổi
bọt, sau lượt 1 dãy sẽ được sắp xếp lại như thế nào?
 *15 40 25 75 30 65 55 90 85 95
 15 25 40 75 30 55 65 90 85 95
 40 25 75 15 30 65 55 90 85 95
 25 40 15 30 75 65 55 85 90 95
Câu 6: Cho dãy số sau: 40 25 75 15 65 55 9 0 30 95 85. Áp dụng phương pháp sắp xếp nổi
bọt, sau lượt 2 dãy sẽ được sắp xếp lại lại như thế nào?
 *15 25 40 30 75 55 65 85 90 95
 25 15 40 30 75 55 65 85 90 95
 40 25 15 75 30 65 55 95 85 90
 15 25 40 75 30 55 65 90 85 95
Câu 7: Cho dãy số sau: 40 25 75 15 65 55 90 30 95 85. Áp dụng phương pháp sắp xếp nổi
bọt, sau lượt 3 dãy sẽ được sắp xếp lại như thế nào?
 40 25 55 15 30 65 75 90 85 95
 *15 25 30 40 55 75 65 85 90 95
 25 40 30 15 55 65 75 85 90 95
 15 25 40 75 30 55 65 90 85 95
Câu 8: Cho dãy số sau: 40 25 75 15 65 55 90 30 95 85. Áp dụng phương pháp sắp xếp nổi
bọt, sau lượt 4 dãy sẽ được sắp xếp lại như thế nào?
 40 25 55 15 30 65 75 90 85 95
 *15 25 30 40 55 65 75 85 90 95
 15 25 40 75 30 55 65 90 85 95
 15 40 30 25 55 65 75 85 90 95
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
Câu 9: Cho dãy số sau: 40 25 75 15 65 55 90 30 95 85. Áp dụng phương pháp sắp xếp nhanh
(Quick_Sort), sau lượt 1 dãy sẽ được sắp xếp lại như thế nào?
 15 25 40 75 30 55 65 90 85 95
 15 40 30 25 55 65 75 85 90 95
 40 25 55 15 30 65 75 90 85 95
 * (15 25 30) 40 (65 55 90 75 95 85)
Câu 10: Cho dãy số sau: 40 25 75 15 65 55 90 30 95 85. Áp dụng phương pháp sắp xếp
nhanh (Quick_Sort), sau lượt 2 dãy sẽ được sắp xếp lại như thế nào?
 15 40 30 25 55 65 75 85 90 95
 *1 5 (25 30) 40 (65 55 90 75 95 85)
 40 25 55 15 30 65 75 90 85 95
 15 25 40 75 30 55 65 90 85 95
Câu 11: Cho dãy số sau: 40 25 75 15 65 55 90 30 95 85.Áp dụng phương pháp sắp xếp nhanh
(Quick_Sort), sau lượt 3 dãy sẽ được sắp xếp lại như thế nào?
 15 40 30 25 55 65 75 85 90 95
 15 25 40 75 30 55 65 90 85 95
 40 25 55 15 30 65 75 90 85 95
 *15 25 (30) 40 (65 55 90 75 95 85)
Câu 12: Cho dãy số sau: 40 25 75 15 65 55 90 30 95 85. Áp dụng phương pháp sắp xếp
nhanh (Quick_Sort), sau lượt 4 dãy sẽ được sắp xếp lại như thế nào?
 40 25 55 15 30 65 75 90 85 95
 15 40 30 25 55 65 75 85 90 95
 *15 25 30 40 (65 55 90 75 95 85)
 15 25 40 75 30 55 65 90 85 95
Câu 13: Cho dãy số sau: 40 25 75 15 65 55 90 30 95 85. Áp dụng phương pháp sắp xếp
nhanh (Quick_Sort), sau lượt 5 dãy sẽ được sắp xếp lại như thế nào?
 *1 5 25 30 40 (55) 65 (90 75 95 85)
 15 25 40 75 30 55 65 90 85 95
 15 40 30 25 55 65 75 85 90 95
 40 25 55 15 30 65 75 90 85 95
Câu 14: Cho dãy số sau: 40 25 75 15 65 55 90 30 95 85. Áp dụng phương pháp sắp xếp
nhanh (Quick_Sort), sau lượt 6 dãy sẽ được sắp xếp lại như thế nào?
 15 25 40 75 30 55 65 90 85 95
 *1 5 25 30 40 55 65 (90 75 95 85)
 40 25 55 15 30 65 75 90 85 95
 15 40 30 25 55 65 75 85 90 95
Câu 15: Cho dãy số sau: 40 25 75 15 65 55 90 30 95 85. Áp dụng phương pháp sắp xếp
nhanh (Quick_Sort), sau lượt 7 dãy sẽ được sắp xếp lại như thế nào?
 40 25 55 15 30 65 75 90 85 95
 *1 5 25 30 40 55 65 (85 75) 90 (95)
 15 40 30 25 55 65 75 85 90 95
 15 25 40 75 30 55 65 90 85 95
Câu 16: Cho dãy số sau: 40 25 75 15 65 55 90 30 95 85. Áp dụng phương pháp sắp xếp
nhanh (Quick_Sort), sau lượt 8 dãy sẽ được sắp xếp lại như thế nào?
 15 25 40 75 30 55 65 90 85 95
 *1 5 25 30 40 55 65 (75) 85 90 (95)
 40 25 55 15 30 65 75 90 85 95
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
 15 40 30 25 55 65 75 85 90 95
Câu 17: Cho dãy số sau: 40 25 75 15 65 55 90 30 95 85. Áp dụng phương pháp sắp xếp
nhanh (Quick_Sort), sau lượt 9 dãy sẽ được sắp xếp lại như thế nào?
 40 25 55 15 30 65 75 90 85 95
 *1 5 25 30 40 55 65 7 5 85 90 (95)
 15 25 40 75 30 55 65 90 85 95
 15 40 30 25 55 65 75 85 90 95
Câu 18: Cho dãy số sau: 40 25 75 15 65 55 90 30 95 85. Áp dụng phương pháp sắp xếp hòa
nhập (Merge_Sort) trực tiếp, sau lượt 1 dãy sẽ được sắp xếp lại như thế nào?
 [15 40] [30 25] [55 65] [75 85] [90 95]
 [40 25] [55 15] [30 65] [75 90] [85 95]
 [15 25] [40 75] [30 55] [65 90] [85 95]
 * [25 40] [15 75] [55 65] [30 90] [85 95]
Câu 19: Cho dãy số sau: 40 25 75 15 65 55 90 30 95 85. Áp dụng phương pháp sắp xếp hòa
nhập (Merge_Sort), sau lượt 2 dãy sẽ được sắp xếp lại như thế nào?
 * [15 25 40 75] [30 55 65 90] [85 95]
 [15 40 30 25] [55 65 75 85] [90 95]
 [40 25 55 15] [30 65 75 90] [85 95]
 [15 25 75 40] [30 65 55 90] [85 95]
Câu 20: Cho dãy số sau: 40 25 75 15 65 55 90 30 95 85. Áp dụng phương pháp sắp xếp hòa
nhập (Merge_Sort), sau lượt 3 dãy sẽ được sắp xếp lại như thế nào?
 [15 25 75 40] [30 65 55 90 85 95]
 [40 25 55 15] [30 65 75 85 90 95]
 * [15 25 30 40 55 65 75 90] [85 95]
 [15 40 30 25 55 65 75 85] [90 95]
Câu 21: Cho dãy số sau: 40 25 75 15 65 55 90 30 95 85. Áp dụng phương pháp sắp xếp hòa
nhập (Merge_Sort), sau lượt 4 dãy sẽ được sắp xếp lại như thế nào?
 [15 40 30 25 55 65 75 85 90 95]
 * [15 25 30 40 55 65 75 85 90 95]
 [15 25 75 40 30 65 55 90 85 95]
 [40 25 55 15 30 65 75 85 90 95]
Câu 22: Cho dãy số sau: 14 32 10 43 57 87 55 36 97 11. Áp dụng phương pháp tìm kiếm tuần
tự, sau bao nhiều lần thực hiện phép so sánh ta sẽ tìm thấy số 43?
 2 lần
 5 lần
 3 lần
 *4 lần
Câu 23: Cho dãy số sau: 10 11 14 32 36 43 55 57 87 97 . Áp dụng phương pháp tìm kiếm nhị
phân, sau bao nhiêu lần phân đoạn ta sẽ tìm thấy số 43?
 4 lần
 2 lần
 *3 lần
 5 lần
Câu 24: Cho dãy số sau: 10 11 14 32 36 43 55 57 87 97. Áp dụng phương pháp tìm kiếm nhị
phân, để tìm kiếm số 10, lần phân đoạn thứ nhất của dãy sẽ là:
 [14 32 10 43 57]
 [87 55 36 97 11]
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
 [55 36 97 11]
 * [10 11 14 32 36]
Câu 25: Cho dãy số sau: 10 11 14 32 36 43 55 57 87 97. Áp dụng phương pháp tìm kiếm nhị
phân, để tìm kiếm số 97, lần phân đoạn thứ hai của dãy sẽ là:
 [36 97 11]
 [36 11]
 [36 97]
 * [87 97]
Câu 26: Tính chất nào sau đây là tính chất của cây nhị phân tìm kiếm:
 Đáp án A và C
 *Mọi khóa thuộc cây con trái nút đó đều nhỏ hơn khóa ứng với nút đó
 Mọi khóa thuộc cây con trái nút đó đều lớn hơn khóa cây con phải nút đó
 Mọi khóa thuộc cây con trái nút đó đều lớn hơn khóa ứng với nút đó
Câu 27: Tính chất nào sau đây là tính chất của cây nhị phân tìm kiếm?
 Mọi khoá thuộc cây con phải nút đó đều nhỏ hơn khoá ứng với nút đó
 Đáp án A và C
 Mọi khóa thuộc cây con phải nút đó đều nhỏ hơn khóa cây con trái nút đó
 *Mọi khóa thuộc cây con phải nút đó đều lớn hơn khóa ứng với nút đó
Câu 28: Giải thuật sau là phương pháp tìm kiếm nào?
Function F(x)
Begin
i:=1; a[n+1]:=x;
while a[i] <> x do i:=i+1;
if i=n+1 then return(0)
else return(i);
End;
 Không là phương pháp tìm kiếm nào
 *Tìm kiếm tuần tự
 Tìm kiếm nhị phân
 Tìm kiếm trên cây nhị phân tìm kiếm
Câu 29: Giải thuật sau là phương pháp tìm kiếm nào?
Function Binary_search(l,r,x)
Begin
If l>r then k:=0
Else m:= (l+r) div 2
If x< a[m] then K:=binary_search(l, m, x)
Else If x>a[m] then K:=binary_search(m+1,r,x)
Else k:=m;
Return(m);
End;
 Tìm kiếm tuần tự
 Tìm kiếm trên cây nhị phân tìm kiếm
 Không là phương pháp tìm kiếm nào
 *Tìm kiếm nhị phân
Phần 4:
Câu 1: Các thuộc tính của một kiểu dữ liệu
 Tên kiểu dữ liệu
 Kích thước lưu trữ
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
 Miền giá trị
 Tập các toán tử tác động lên kiểu dữ liệu
 *Tất cả các thuộc tính đưa ra
Câu 2: Miền giá trị của Kiểu số nguyên là:
 *-32768 .. 32767
 -32767 .. 32768
 0..32767
 0..32768
Câu 3: Kích thước lưu trữ kiểu số nguyên là
 4 byte
 6 byte
 *2 byte
 1 byte
Câu 4: Tập các toán tử kiểu số nguyên là
 +, -, , /, %, các phép so sánh, div ,mod
 *+, -, , /, %, các phép so sánh
 +, -, , /, % ,true,false
 +, -, , /, %
Câu 5: Tên kiểu nguyên là:
 *Integer
 Boolean
 Byte
 Real
Câu 6: Khi khai báo
type T = min..max
Trong đó min và max là cận dưới và cận trên của khoảng
T là kiểu gì?
 Kiểu integer
 Kiểu liệt kê
 *Kiểu đoạn con
 Không có kiểu này
Câu 8: Đâu là kiểu dữ liệu có cấu trúc
 Kiểu array (mảng)
 Kiểu record (bản ghi)
 *Tất cả các kiểu đưa ra
 Kiểu con trỏ
Câu 9: Chọn câu trả lời đúng nhất về thuật toán
 Thuật toán 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.
 Thuật toán là nòng cốt của chương trình
 *Thuật toán là một dãy hữu hạn các bước, mỗi bước mô tả chính xác các phép toán
hoặc hành động cần thực hiện để giải quyết vấn đề đặt ra
 thuật toán cần có một hoặc nhiều dữ liệu ra (output) ,dữ liệu vào (input).
Câu 10: .Đặc trưng của thuật toán
 *Tất cả ý nêu ra
 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
 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
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
 Mỗi thuật toán có bộ dữ liệu vào ,ra tương ứng
 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
Câu 11: Đặc trưng nào của thuật toán thể hiện: 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
 Tính dừng
 Tính xác định
 *Tính khả thi
Câu 12: Để viết chương trình chỉ để sử dụng một số ít lần và cái giá của thời gian viết chương
trình vượt xa cái giá của chạy chương trình thì ta chọn thuật toán:
 Thuật toán sử dụng tiếp kiện nhất nguồn tài nguyên của máy tính, và đặc biệt, chạy
nhanh nhất có thể được.
 *Thuật toán đơn giản, dễ hiểu, dễ cài đặt (dễ viết chương trình)
 Cả hai tiêu chí nêu ra
Câu 13: Khi viết các chương trình (thủ tục hoặc hàm ) để sử dụng nhiều lần, cho nhiều người
sử dụng ta chọn thuật toán:
 Cả hai tiêu chí nêu ra
 Thuật toán đơn giản, dễ hiểu, dễ cài đặt (dễ viết chương trình)
 *Thuật toán sử dụng tiếp kiện nhất nguồn tài nguyên của máy tính, và đặc biệt, chạy
nhanh nhất có thể được.
Câu 14: 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
Chú ý: (log2n) = Log cơ số 2 của n
 O(nlog2n),O(n),O(log2n),O(1)
 O(1),O(nlog2n),O(n),O(log2n)
 O(log2n),O(n),O(nlog2n),O(1)
 *O(1),O(log2n),O(n),O(nlog2n)
Câu 15: Qui tắc tổng Xác định độ phức tạp tính toán
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)) thì thời gian thực hiện đoạn P1 rồi P2 tiếp theo sẽ là
 T1(n) + T2(n: O(Min(f(n),g(n))).
 *T1(n) + T2(n: O(max(f(n),g(n))).
 T1(n) + T2(n: O((f(n)+g(n))).
 T1(n) + T2(n: O((f(n) or g(n))).
Câu 16: Trong một chương trình có 3 bước thực hiện mà thời gian thực hiện tưng bước lần
lượt là O(n2), O(n3) và O(nlog2n). thời gian thực hiện chương trình sẽ là
Chú ý: (log2n) = Log cơ số 2 của n; n^2 = n mũ 2
 *O(n^3)
 O(n^2)
 O(nlog2n)
 O(n^2)+ O(n^3) + O(nlog2n)
Câu 17: Xác định độ phức tạp tính toán
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à
 T1(n)T2(n: O(f(n)/g(n))
 *T1(n)T2(n: O(f(n)g(n))
 T1(n)T2(n: O(f(n)and g(n))
 T1(n)T2(n: O(f(n)+g(n))
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
Câu 18: Thời gian thực hiện các lệnh đơn : gán, đọc, viết là
Chú ý: (log2n) = Log cơ số 2 của n; n^2 = n mũ 2
 O(2)
 O(log2(n))
 *O(1)
 O(n
Câu 19: thời gian thực hiện lệnh hợp thành(Begin.. end) được xác định bởi
Chú ý: (log2n) = Log cơ số 2 của n; n^2 = n mũ 2
 O(log2(n)
 Quy tắc nhân
 *quy tắc tổng
 Hằng số
Câu 20: Nếu S1 và S2 là các câu lệnh và E là biểu thức logic thì
If E Then S1 Else S2
Giả sử thời gian thực hiện các lệnh S1, S2 là O(f(n)) và O(g(n)) tương ứng. Khi đó thời gian
thực hiện lệnh if là
 O(Min (f()n), g(n)))
 *O(max (f()n), g(n)))
 O(or( (f()n), g(n)))
 O(And (f()n), g(n)))
Câu 21:
 O(And (f()n), g(n)))
 *O(f(n)g(n)).
 O(max (f()n), g(n)))
Câu 22:
 O(n)
 O(1)
 2log2n + 1
 *O(log2n)
Câu 23:
 O(2)
 O(n)
 *O(1)
 O(m)
Câu 24:
 O(2)
 O(m)
 *O(1)
 O(n)
Câu 25:
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
 O(n)
 O(m)
 *O(1)
 O(n^2)
Câu 26:
 O(log2n + 1)
 O(n)
 O(n^2)
 *O(log2n)
Câu 27:
 *O(n^2)
 O(n!)
 O(n)
 O(log2(n)
Câu 28:
 O(n^2)
 O(1)
 *O(N)
 O(n^3)
Câu 29:
 O(n^2)
 O(1)
 *O(N)
 O(log2(n))
Câu 30:
 O(n^2)
 *O(n^3)
 O(n)
 O(nlog2(n)
Câu 31: GiảI thuật đệ quy la:
 Nếu lời giải của của một bài toán T được giải bằng lời giải của một bài toán T1 khác T
, thì lời giải đó được gọi là lời giải đệ quy
 Nếu lời giải của của một bài toán T được giải bằng lời giải của một bài toán T1 mà T1
giảI được thì lời giải đó được gọi là lời giải đệ quy
 *Nếu lời giải của của một bài toán T được giải bằng lời giải của một bài toán T1, có
dạng giống như T, thì lời giải đó được gọi là lời giải đệ quy
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
 Nếu lời giải của của một bài toán T được giải bằng lời giải của một bài toán T1 mà T1
có độ phức tạp khác T , thì lời giải đó được gọi là lời giải đệ quy
Câu 32:
 sau một vàI lần tách đôI từ điển
 Khi xác định từ cần tìm nằm ở nửa sau của từ đIún
 Khi xác định từ cần tìm nằm ở nửa trước của từ đIển
 *sau nhiều lần tách đôi từ điển chỉ còn một trang
Câu 33: Một giảI thuật đệ quy xảy ra trường hợp suy biến khi nào
 Khi không thể giảI quyết được giảI thuật.
 *Sau một số lần có lời gọi đệ quy bài toán còn lại sẽ được giải quyết theo một cách
khác
 Khi kết quả của giảI thuật bằng giá trị 0
 Sau một số lần có lời gọi đệ quy.
Câu 34: .Đặc đIúm nào của giảI thuật viết bằng đệ quy là sai trong các đặc đIúm sau
 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.
 Tất cả đều sai
 Trong thủ tục đệ quy có lời gọi đến chính thủ tục đó
 *sau một số lần gọi đệ quy bàI toán có giá trị bằng 0
Câu 35:
 Tăng lên 1
 N=1
 *Giảm đI 1
 N=0
Câu 36:
 Factorial(n: 0
 *Factorial(0) = 1
 Factorial(n-1)
 Factorial(n-1) =1
Câu 37:
 *6
 8
 9
 2
Câu 38 :
 9 cặp
 *5 cặp
 12 cặp
 10 cặp
Câu 39:
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
 F(1) = 1 và F(2) = 1
 F(1) = 0 và F(2) = 1
 F(2) = 1
 *F(1) = 1
Câu 40:
 8
 *3
 11
 10
Câu 41: Đặc điểm của giảI thuật đệ quy
 *Tất cả đều đúng
 Trong thủ tục đệ quy có lời gọi đến chính thủ tục đó
 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 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
Câu 42:
 14 bước
 8 bước
 *15 bước
 16 bứơc
Câu 43:
 N=0
 N=3
 *N=1
 N=2
Câu 44: Một giá trị kiểu char chiếm bao nhiêu bộ nhớ
 *1byte
 4byte
 3byte
 2byte
Câu 45: Danh sách tuyến tính là:
 danh sách tuyến tính là một danh sách có dạng (a1, a2, ..., an)
 *danh sách mà quan hệ lân cận giữa các phần tử được hiển thị ra thì được là danh
sách tuyến tính.
 danh sách tuyến tính là một danh sách rỗng
Câu 46: ưu đIểm của việc càI đặt danh sách bằng mảng
 *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ử.
 Khi khai báo một mảng ta phải xác định số lượng phần tử của mảng,nên khống chế số
luợng của đối tuợng mà danh sách lưu trữ.
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
 Tất cả đều đúng
Câu 47: Danh sách tuyến tính dạng ngăn xếp là:
 *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 .
 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
 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.
Câu 48: Danh sách tuyến tính dạng ngăn xếp làm việc theo nguyên tắc
 *FILO(first in last out)
 FIFO( first in first out)
 FOLO( fisrt out last out)
 LILO(last in last out)
Câu 49:
 Khai báo hàng đợi
 Khai báo mảng
 *Khai báo ngăn xếp
 Khai báo con trỏ bản ghi
Câu 50:
 Dòng 6
 Dòng 5
 Dòng 1
 *Dòng 4, dòng 5
Câu 51:
 Khởi tạo stack có giá trị bằng 0
 *Khởi tạo stack rỗng
 Thêm phần tử vào danh sách
 Kiểm tra stack có phần tử bằng 0 hay không?
Câu 52:
 Khởi tạo stack có giá trị bằng 0
 Khởi tạo stack rỗng
 *Kiểm tra ngăn xếp rỗng.
 Kiểm tra ngăn xếp đầy.
Câu 53:
 *Kiểm tra ngăn xếp đầy.
 Kiểm tra ngăn xếp rỗng.
 Kiểm tra ngăn xếp có giá trị nào lớn nhất
 Tìm phần tử lớn nhất của ngăn xếp
Câu 54:
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
 *True
 1
 0
 False
Câu 55:
 0
 *True
 1
 False
Câu 56:
 *Thêm một phần tử mới vào đỉnh ngăn xếp
 Kiểm tra ngăn xếp có đầy không
 Loại bỏ phần tử ở đỉnh của ngăn xếp
 Xử lý với nhiều ngăn xếp.
Câu 57:
 Xử lý với nhiều ngăn xếp.
 *Loại bỏ phần tử ở đỉnh của ngăn xếp
 Thêm một phần tử mới vào đỉnh ngăn xếp
 Kiểm tra ngăn xếp có rỗng không
Câu 58: 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
 *Ngăn xếp (stack)
 Hàng đợi(Queue)
 Bản gCâu Record)
 Mảng (array)
Câu 59:
 *ứng dụng ngăn xếp để đổi số N từ cơ số 10 sang cơ số 2
 ứng dụng ngăn xếp để thay N bằng thương của phép chia N cho 2
 ứng dụng ngăn xếp để Đưa giá trị N vào ngăn xếp và lấy ra giá trị N
 ứng dụng ngăn xếp để tính số dư trong phép chia N cho 2
Câu 60:
 dòng 3
 dòng 1
 *dòng 4
 dòng 2
Câu 61:
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
 *1 5 + 8 4 1 - -
 1 5 8 4 1- -+
 1 5 + 8 4 1 - -
 1 5 8 4 1+ - -
Câu 62: định nghĩa danh sách tuyến tính Hàng đợi (Queue)
 Hàng đợi là kiểu danh sách tuyến tính trong đó, phép bổ sung một phần tử vào hàng
đợiđượ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.
 Hàng đợi là kiểu danh sách tuyến tính trong đó, phép bổ sung một phần tử vào hàng
đợi hay loại bỏ được thực hiện ở một đầu danh sách gọi là đỉnh (Top)
 *Hàng đợi là kiểu danh sách tuyến tính trong đó, phép bổ sung một phần tử vào hàng
đợi được thực hiện ở một đầu, gọi là lối sau (rear) và phép loại bỏ một phần tử được
thực hiện ở đầu kia, gọi là lối trước (front).
Câu 63: hàng đợi còn được gọi là danh sách kiểu
 LIFO
 FILO
 LOLO
 *FIFO
Câu 64:
 *Hàng đợi (queue)
 Con trỏ (pointer)
 Ngăn xếp (stack)
 Mảng (array)
Câu 65:
 Kiểm tra hàng đợi có rỗng hay không
 *Khởi tạo một hàng đợi rỗng
 Loại bỏ một phần tử ra khỏi hàng đợi
 Thêm một phần tử vào hàng đợi
Câu 66:
 *Kiểm tra hàng đợi đầy.
 Khởi tạo một hàng đợi rỗng
 Thêm một phần tử vào hàng đợi
 Kiểm tra hàng đợi có rỗng hay không
 Loại bỏ một phần tử ra khỏi hàng đợi
Câu 67:
 Khởi tạo một hàng đợi rỗng
 Loại bỏ một phần tử ra khỏi hàng đợi
 Thêm một phần tử vào hàng đợi
 *Kiểm tra hàng đợi có rỗng hay không
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
 Kiểm tra hàng đợi đầy.
Câu 68:
 Kiểm tra hàng đợi có rỗng hay không
 Kiểm tra hàng đợi đầy.
 Khởi tạo một hàng đợi rỗng
 *Thêm một phần tử vào hàng đợi
Câu 69:
 Thêm một phần tử vào hàng đợi
 Kiểm tra hàng đợi có rỗng hay không
 *Loại bỏ một phần tử ra khỏi hàng đợi
 Khởi tạo một hàng đợi rỗng
 Kiểm tra hàng đợi đầy.
Câu 70: Khi loại bỏ một phần tử ra khỏi hàng đợi Thì:
 Cần khởi tạo lại hàng đợi
 Nếu hàng đợi chỉ có một phần tử thì không thể thực hiện việc loại bỏ
 *Nếu hàng đợi rỗng thì không thể thực hiện việc loại bỏ
 Nếu hàng đợi đầy thì không thể thực hiện việc loại bỏ
Câu 71: Khi bổ sung một phần tử mới vào hàng đợi cần kiểm tra
 Hàng đợi có bao nhiêu phần tử
 Hàng đợi có bao nhiêu giá trị bằng 0
 Hàng đợi có rỗng không
 *Hàng đợi có đầy không
Câu 72:
 40
 *43
 41
 42
Câu 73: ý tưởng phương pháp sắp xếp nổi bọt (bubble sort) là:
 Chọn phần tử bé nhất xếp vào vị trí thứ nhất,tương tự đối với phần tử nhỏ thứ hai,ba...
 Lần lượt lấy phần tử của danh sách chèn vị trí thích hợp của danh sách đã sắp
 Dựa vào tư tưởng "chia để trị
 *so sánh hai phần tử kề nhau nếu chưa đúng thì đổi chỗ
Câu 74: ý tưởng phương pháp sắp xếp chèn(insertion sort)
 *Lần lượt lấy phần tử của danh sách chèn vị trí thích hợp của danh sách đã sắp
 so sánh hai phần tử kề nhau nếu chưa đúng thì đổi chỗ
 Dựa vào tư tưởng "chia để trị
 Chọn phần tử bé nhất xếp vào vị trí thứ nhất,tương tự đối với phần tử nhỏ thứ hai,ba...
Câu 75: ý tưởng phương pháp sắp xếp chọn (select sort)
 Lần lượt lấy phần tử của danh sách chèn vị trí thích hợp của danh sách đã sắp
 *Chọn phần tử bé nhất xếp vào vị trí thứ nhất,tương tự đối với phần tử nhỏ thứ
hai,ba...
 so sánh hai phần tử kề nhau nếu chưa đúng thì đổi chỗ
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
 Dựa vào tư tưởng "chia để trị".
Câu 76:
 *Sắp xếp chọn(selection sort)
 Sắp xếp nổi bọt(bubble sort)
 Sắp xếp nhanh(quick sort)
 Sắp xếp chèn(insertion sorr)
Câu 77:
 Sắp xếp chọn(selection sort)
 *Sắp xếp nổi bọt(bubble sort)
 Sắp xếp chèn(insertion sorr)
 Sắp xếp nhanh(quick sort)
Câu 78:
 Sắp xếp chèn(insertion sort)
 Sắp xếp chọn(selection sort)
 Sắp xếp nhanh(quick sort)
 *Sắp xếp nổi bọt(bubble sort)
Câu 79: Tư tưởng của giải thuật tìm kiếm nhị phân:
 *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 quuyế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
 Dựa vào Tư tưởng "chia để trị
 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
Câu 80: Tư tưởng của giải thuật tìm kiếm tuần tự
 Dựa vào Tư tưởng "chia để trị".
 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 quuyế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
 *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
Phần 5:
Câu 1: Có khai báo dạng:
Type Tên kiểu = ^ Kiểu dữ liệu;
Var Tên biến : Tên kiểu;
Khai báo trên thuộc cấu trúc dạng
 bản ghi
 *Con trỏ
 mảng
Câu 2: Ta xét một khai báo có dạng
Type P = ^T;
P có nghiã là gì:
 là kiểu dữ liệu mà con trỏ trỏ tới.
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
 Chỉ địa chỉ của giá trị mà nó đang trỏ tới.
 Cho kết quả là giá trị kiểu T mà nó đang trỏ tới.
 *là biến kiểu con trỏ.
Câu 3: Ta xét một khai báo có dạng
Type P = ^T;
T có nghĩa là gì?
 Chỉ địa chỉ của giá trị mà nó đang trỏ tới
 là biến kiểu con trỏ.
 Cho kết quả là giá trị kiểu T mà nó đang trỏ tới.
 *là kiểu dữ liệu mà con trỏ trỏ tới.
Câu 4: Ta xét một khai báo có dạng
Type P = ^T;
P^ có nghĩa là gì?
 *Cho kết quả là giá trị kiểu T mà nó đang trỏ tới.
 Chỉ địa chỉ của giá trị mà nó đang trỏ tới
 là biến kiểu con trỏ.
 là kiểu dữ liệu mà con trỏ trỏ tới.
Câu 5: Đối với biến con trỏ Hàm New(p) có nghĩa là gì
 Thu hồi vùng nhớ đã cấp phát
 gán giá trị của địa chỉ của vùng Heap cho một con trỏ p nào đó.
 *cấp phát vùng nhớ động do con trỏ p quản lý
 hủy bỏ vùng nhớ do p trỏ tới (quản lý).
Câu 6: Đối với dữ liệu kiểu con trỏ Thủ tục GetMem (p, k) để làm gì?
 *Thủ tục này sẽ cấp phát k bytes vùng nhớ do con trỏ p quản lý.
 cho biết tổng số bytes còn lại trên Heap.
 gán giá trị của địa chỉ của vùng Heap cho một con trỏ p nào đó
 Thủ tục này sẽ thu hồi vùng nhớ đã được cấp phát .
Câu 7: Định nghĩa cấu trúc dữ liệu dạng Danh sách(LIST)
 Danh sách là kiểu dữ liệu mảng
 danh sách là Tập hợp các phần tử khác kiểu
 Danh sách là kiểu con trỏ
 *danh sách là một tập hợp các phần tử có cùng một kiểu mà ta gọi là kiểu phần tử
(ElementType).
Câu 8: Trong các cấu trúc dữ liệu sau đâu là dữ liệu trừu tượng
 Cấu trúc dữ liệu dạng StacK
 Cấu trúc dữ liệu dạng danh sách(LIST)
 *Tất cả cấu trúc đã nêu
 Cấu trúc dữ liệu kiểu hàng đợi(QUEUE)
Câu 9: Tính chất quan trọng của danh sách:
 Các phần tử của danh sách có thể truy nhập ngẫu nhiên.
 *Các phần tử của danh sách có thứ tự tuyến tính theo vị trí xuất hiện của
chúng(position)
 Tất cả đều sai
 Các phần tử của danh sách không theo thứ tự
Câu 10: Có thể cài đặt danh sách bằng:
 Con trỏ
 *Mảng và con trỏ.
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
 Mảng
 tất cả đều sai
Câu 11: Cài đặt danh sách bằng mảng có nghiã là
 Dùng biến con trỏ lưu trữ các phần tử của danh sách.
 *dùng một mảng (array) để lưu trữ liên tiếp các phần tử của danh sách bắt đầu từ vị trí
đầu tiên của mảng.
 Tất cả đều đúng.
 Dùng bản ghi có hai thành phần để lưu trữ các phần tử của danh sách
Câu 12:
 Đây là khai báo bản ghi.
 Đây là khai báo cấu trúc dữ liệu Stack bằng mảng
 *Đây là khai báo cấu trúc dữ liệu Danh sách bằng mảng
 Đây là khai báo cấu trúc dữ liệu Danh sách bằng con trỏ
Câu 13: Thủ tục này làm nhiệm vụ gì(danh sách cài đặt bằng mảng)?
Procedure MlList ( Var L : List);
begin
L.Last : = 0;
End;
 Thủ tục kiểm tra danh sách rỗng
 *Thủ tục khởi tạo danh sách rỗng
 Thủ tục chèn thêm một giá trị bằng 0 vào danh sách
 Tất cả đều sai
Câu 14: Danh sách cài đặt bằng mảng
Hàm sau có chức năng gì?
Function EtyList ( L : List ) : Boolean;
begin
EtyList : = ( L.Last = 0 );
End;
 Kiểm tra giá trị cuối có bằng không hay không?.
 Khởi tạo danh sách rỗng
 *Kiểm tra danh sách rỗng
 Kiểm tra danh sách đầy
Câu 15: Trong khi sử dụng cấu trúc dữ liệu dạng danh sách
Hàm sau có chức năng gì?
Function FList ( L : List ) : Boolean;
begin
FList : = ( L.Last > = Maxlenght );
End;
 tất cả đều sai
 Kiểm tra danh sách rỗng
 Khởi tạo danh sách có giá trị cuối bằng không.
 *Kiểm tra danh sách đầy
Câu 16:
 Thủ tục khởi tạo danh sách rỗng
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
 *Thủ tục nhập giá trị cho các phần tử của danh sách
 Thủ tục xoá phần tử của danh sách
 Thủ tục xen một phần tử vào danh sách
Câu 17: Khi chèn một phần tử vào danh sách xảy ra tình trạng:
độ dài của danh sách = độ dài của mảng thì thông báo là:
 Danh sách chưa khai báo
 Danh sách không tồn tại
 *Danh sách đầy
 Danh sách rỗng
Câu 18: Khi chèn một phần tử vào danh sách (cài đặt bằng mảng) yêu cầu cần
 độ dài của danh sách có thể tuỳ ý.
 Độ dài danh sách > độ dài của mảng
 độ dài của danh sách = độ dài của mảng
 *Độ dài của danh sách < độ dài của mảng
Câu 19:
 khởi tạo danh sách rỗng
 Xoá một giá trị của danh sách.
 *Chèn một giá trị vào danh sách
Câu 20: Cài đặt danh sách bằng con trỏ có nghĩa là:
 Dùng một mảng (array) để lưu trữ liên tiếp các phần tử của danh sách bắt đầu từ vị trí
đầu tiên của mảng. Khai báo bản ghi gồm 2 trường:Trường Elements để giữ nội dung
của phần tử trong danh sách. Trường Next là một con trỏ giữ địa chỉ của ô kế tiếp.
 Dùng con trỏ quản lí các phần tử của mảng theo phương thức bất kì. Để một phần tử
có thể chỉ đến một phần tử khác ta xem mỗi ô là một Record gồm có 2 trường :
Trường Elements để giữ nội dung của phần tử trong danh sách. Trường Next là một
con trỏ giữ địa chỉ của ô kế tiếp.
 *Dùng con trỏ để liên kết các phần tử của danh sách theo phương thức ai chỉ đến
ai+1. Để một phần tử có thể chỉ đến một phần tử khác ta xem mỗi ô là một Record
gồm có 2 tr-ờng : Trường Elements để giữ nội dung của phần tử trong danh sách.
Trường Next là một con trỏ giữ địa chỉ của ô kế tiếp.
Câu 21:
 *Khai báo danh sách bằng con trỏ
 Là khai báo danh sách bằng mảng
 Khai báo danh sách bằng bản ghi có hai trường.
 Tất cả đều sai
Câu 22:
 Thủ tục tạo mới danh sách
 *Thủ tục khởi tạo danh sách rỗng
 Thủ tục đưa con trỏ vào biến Nil
Câu 23:
 *Kiểm tra danh sách rỗng
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
 Khởi tạo danh sách rỗng
 Đưa con trỏ về cuối danh sách.
 Tạo mới một danh sách
Câu 24: Danh sách khai báo bằng con trỏ. Hình ảnh sau mô tả cho thủ tục gì?
 xoá một phần tử của danh sách
 *xen một phần tử x vào danh sách
 Tìm kiếm một phần tử của danh sách.
Câu 25: Danh sách khai báo bằng con trỏ. Hình ảnh sau mô tả cho thủ tục gì?
 Tìm kiếm một phần tử của danh sách.
 xen một phần tử x vào danh sách
 *xoá một phần tử của danh sách
Câu 26: Định nghĩa cấu trúc dữ liệu Stack:
 *Stack là một danh sách đặc biệt mà phép thêm vào hoặc loại bỏ một phần tử chỉ thực
hiện tại một đầu gọi là đỉnh (Top) của Stack.
 Stack là một danh sách đặc biệt mà phép thêm vào được thực hiện ở một đầu ,Và phép
loại bỏ được thực hiện ở phần kia của stack.
 Stack là danh sách kết nối.
 Stack là cấu trúc dữ liệu được cài đặt bằng con trỏ.
Câu 27: Một tích chất của cấu trúc dữ liệu Stack là:
 FiFO(Fist in Fist Out): vào truớc ra trước
 *FILO ( First In Last Out): vào trước ra sau
 LILO (Lats in Last out): vào sau ra sau
Câu 28: Để cài đặt Stack ta có thể dùng phương pháp nào sau đây:
 *Bằng con trỏ và bằng mảng
 Bằng con trỏ
 Tất cả đều sai
 Bằng mảng
Câu 29:
 Thủ tụcTạo mới một StacK
 Thủ tục cập nhật giá trị vào stack
 Thủ tục chèn một giá trị vào stack.
 *Thủ tục khởi tạo Stack rỗng
Câu 30:
 *Thủ tục xoá một giá trị của stack
 Thủ tục tạo một stack rỗng
 Thủ tục tạo mới một stack
 Thủ tục thêm một giá trị vào stack
Câu 31:
 Thủ tục tạo một stack rỗng
 *Thủ tục thêm một giá trị vào stack
 Thủ tục tạo mới một stack
 Thủ tục xoá một giá trị của stack
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
Câu 32:
 Thủ tục chèn một giá trị vào stack.
 Thủ tụcTạo mới một StacK
 *Thủ tục khởi tạo Stack rỗng
 Thủ tục cập nhật giá trị vào stack
Câu 33: Định nghĩa cẩu trúc dữ liệu hàng đợi (QUEUE)
 Hàng là một danh sách đặc biệt mà phép thêm vào hay loại bỏ đều thực hịên cuối
hàng (Rear).
 *Hàng là một danh sách đặc biệt mà phép thêm vào chỉ thực hiện ở một đầu của danh
sách gọi là cuối hàng (Rear). Phép loại bỏ lại được thực hiện ở một đầu kia của danh
sách gọi là đầu hàng (Front).
 Hàng là một danh sách đặc biệt mà phép thêm vào hay loại bỏ đều thực hiện ở một
đầu danh sách gọI là (Rear) hoặc (Front)
 Hàng là một danh sách đặc biệt mà phép thêm vào thực hiện ở một đầu của danh sách
gọi là cuối hàng (Rear) hoặc đầu hàng (Front). Phép loại bỏ lại được thực hiện ở một
đầu kia của danh sách gọi là đầu hàng (Front) hoặc cuối hàng (Rear).
Câu 34: Tính chất của hàng đợi
 Vào sau - ra trước" - LIFO : Last In Fist Out.
 Vào trước - ra sau" - FILO : First In last Out.
 *"Vào trước - ra trước" - FIFO : First In First Out.
Câu 35:
 Hàm kiểm tra Queue rỗng
 Kiểm tra Queue đầy :
 Thủ tục xen một phần tử vào cuối hàng
 *Thủ tục khởi tạo Queue rỗng
Câu 36:
 *Hàm Kiểm tra Queue đầy
 Hàm kiểm tra Queue rỗng
 Hàm kiểm tra một phần tử có trong hàng hay không?
Câu 37:
 Kiểm tra một phần tử có trong hàng.
 Kiểm tra Hàng đầy
 *Kiểm tra hàng Rỗng
Câu 38: Hàng cài đặt bằng con trỏ.Hình ảnh sau minh hoạ cho thủ tục nào?
 Thủ tục tìm kiếm một phần tử trong Hàng
 Thủ tục xóa một phần tử đầu hàng
 *Thủ tục xen một phần tử vào cuối hàng :
 Thủ tục khởi tạo Queue rỗng
Câu 39: Hàng cài đặt bằng con trỏ.Hình ảnh sau minh hoạ cho thủ tục nào?
 *Thủ tục xóa một phần tử đầu hàng
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
 Thủ tục xen một phần tử vào cuối hàng
 Thủ tục tìm kiếm một phần tử trong Hàng
 Thủ tục khởi tạo Queue rỗng
Câu 40: Đối với biến con trỏ Hàm MaxAvail : Longint : có nghĩa là gì
 Hàm cho biết tổng số bytes còn lại trên Heap.
 *Hàm cho biết vùng nhớ lớn nhất còn trống trong Heap.
 Cho biết số bytes được cấp phát / thu hồi bởi biến.
 Hàm cho biết vùng nhớ lớn nhất được cấp phát.
Câu 41: Đối với biến con trỏ Hàm MemAvail : Longint : có nghĩa là gì
 Hàm cho biết vùng nhớ lớn nhất được cấp phát.
 Hàm cho biết tổng số bytes còn lại trên Heap.
 *Cho biết số bytes được cấp phát / thu hồi bởi biến.
 Hàm cho biết vùng nhớ lớn nhất còn trống trong Heap.
Câu 42: Đối với biến con trỏ Hàm SizeOf (Biến ) : Longint : có nghĩa là gì
 Hàm cho biết vùng nhớ lớn nhất được cấp phát
 *Hàm cho biết tổng số bytes còn lại trên Heap
 Hàm cho biết vùng nhớ lớn nhất còn trống trong Heap.
 Cho biết số bytes được cấp phát / thu hồi bởi biến.
Câu 43: Đối với biến con trỏ hàm Add (x) : Pointer có chức năng gì?
 Cho biết địa chỉ seg : Ofs.
 Cho biết địa chỉ segment của biến x
 *Cho biết địa chỉ tổng quát của biến x.
 Cho biết địa chỉ Offset của biến x.
Câu 44: Đối với biến con trỏ hàm Seg (x) : Word có chức năng gì?
 Cho biết địa chỉ tổng quát của biến x.
 Cho biết địa chỉ Offset của biến x.
 *Cho biết địa chỉ segment của biến x
 Cho biết địa chỉ seg : Ofs.
Câu 45: Đối với biến con trỏ hàm Ofs (x) : Word có chức năng gì?
 *Cho biết địa chỉ Offset của biến x.
 Cho biết địa chỉ segment của biến x
 Cho biết địa chỉ tổng quát của biến x.
 Cho biết địa chỉ seg : Ofs.
Câu 46: Thế nào là sắp xếp trong
 Sắp xếp trong là sắp xếp dữ liệu không cần đến bộ nhớ trong máy tính ,mà chỉ cần các
đối tượng được lưu trũ bằng bộ nhớ ngoài.
 *Sắp xếp trong là sự sắp xếp dữ liệu được tổ chức trong bộ nhớ trong cuả máy tính, ở
đó ta có thể sử dụng khả năng truy nhập ngẫu nhiên của bộ nhớ
 Sắp xếp trong là sự sắp xếp được sử dụng khi số lượng đối tượng được sắp xếp lớn.
Cụ thể là ta sẽ sắp xếp dữ liệu được lưu trữ trong các tập tin.
 Sắp xếp trong là sắp xếp không phụ thuộc vào độ dài tập tin. Mà chỉ phụ thuộc vào bộ
nhớ trong của máy tính
Câu 47: Thế nào là sắp xếp ngoài
 *Sắp xếp ngoài là sắp xếp dữ liệu không cần đến bộ nhớ trong máy tính ,mà chỉ cần
các đối tượng được lưu trữ bằng bộ nhớ ngoài.
 Sắp xếp ngoài là sự sắp xếp được sử dụng khi số lượng đối tượng được sắp xếp lớn.
Cụ thể là ta sẽ sắp xếp dữ liệu được lưu trữ trong các tập tin.
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
 Sắp xếp ngoài là sự sắp xếp dữ liệu được tổ chức trong bộ nhớ trong cuả máy tính, ở
đó ta có thể sử dụng khả năng truy nhập ngẫu nhiên của bộ nhớ
 Sắp xếp ngoài là sắp xếp không phụ thuộc vào độ dài tập tin. Mà chỉ phụ thuộc vào bộ
nhớ trong của máy tính
Câu 48: Đâu là phương pháp sắp xếp trong ,trong các phương pháp sau
 *Tất cả đều sai
 Phương pháp sắp xếp chọn (insertion sort)
 Phương pháp nổi bọt(Bubble sort)
 Phương pháp sắp xếp chèn (selection sort)
Câu 49: Đâu là phương pháp sắp xếp ngoài ,trong các phương pháp sau
 Phương pháp sắp xếp chọn (selection sort)
 Phương pháp nổi bọt(Bubble sort)
 *cả 3 phương pháp đều đúng
 Phương pháp sắp xếp chèn (insertion sort)
Câu 50: Bước tổng quát của Phương pháp sắp xếp kiểu lựa chọn (selection sort)
 xét các phần tử từ a[n] đến a[i+1].với mỗi phần tử a[j], so sánh khoá của nó với khoá
của phần tử a[j-1] đứng ngay trước nó. Nếu khoá của a[j] nhỏ hơn khoá của a[j-1] thì
hoán đổi a[j] và a[j-1] cho nhau
 *chọn phần tử có khoá nhỏ nhất trong n-i+1 phần tử từ a[i] đến a[n] và hoán vị nó với
a[i].
 xen phần tử a[i+1] vào danh sách đã có thứ tự a[1],a[2],..a[i] sao cho a[1], a[2],..
a[i+1] là một danh sách có thứ tự.
Câu 51: Bước tổng quát của Phương pháp sắp xếp kiểu chèn (insertion sort)
 *xen phần tử a[i+1] vào danh sách đã có thứ tự a[1],a[2],..a[i] sao cho a[1], a[2],..
a[i+1] là một danh sách có thứ tự.
 chọn phần tử có khoá nhỏ nhất trong n-i+1 phần tử từ a[i] đến a[n] và hoán vị nó với
a[i].
 xét các phần tử từ a[n] đến a[i+1].với mỗi phần tử a[j], so sánh khoá của nó với khoá
của phần tử a[j-1] đứng ngay trước nó. Nếu khoá của a[j] nhỏ hơn khoá của a[j-1] thì
hoán đổi a[j] và a[j-1] cho nhau
Câu 52: Bước tổng quát của Phương pháp sắp xếp kiểu nổi bọt (bubble sort)
 xen phần tử a[i+1] vào danh sách đã có thứ tự a[1],a[2],..a[i] sao cho a[1], a[2],..
a[i+1] là một danh sách có thứ tự.
 *xét các phần tử từ a[n] đến a[i+1].với mỗi phần tử a[j], so sánh khoá của nó với khoá
của phần tử a[j-1] đứng ngay trước nó. Nếu khoá của a[j] nhỏ hơn khoá của a[j-1] thì
hoán đổi a[j] và a[j-1] cho nhau
 chọn phần tử có khoá nhỏ nhất trong n-i+1 phần tử từ a[i] đến a[n] và hoán vị nó với
a[i].
Câu 53:
 O(n mũ 2)
 O(n-1)
 O(n)
 *Là hằng
Câu 54:
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
 *O(n-i) thời gian
 Là hằng thời gian
 O(n) thời gian
 O(n mũ 2) thời gian
Câu 55:
 *O(n mũ 2) thời gian
 Là hằng thời gian
 O(n) thời gian
 O(n-i) thời gian
Câu 56:
 O(n-i)
 *O(1)
 O(n)
 O(n^2)
Câu 57:
 *O(1)
 O(n)
 O(n mũ 2)
 O(n-i)
Câu 58:
 *O(n mũ 2)
 O(n)
 O(n-1)
 O(1)
Câu 59: Giả sử cần Sắp xếp mảng gồm 10 mẩu tin có khóa là các số nguyên: 5, 6, 2, 2, 10,
12, 9, 10, 9 và 3 các bước trong bảng sau cho ta biết đang sử dụng phương pháp sắp xếp nào
 một phương pháp khác
 Phương pháp nổi bọt
 Phương pháp sắp xếp chèn
 *Phương pháp sắp xếp lựa chọn
Câu 60: Giả sử cần Sắp xếp mảng gồm 10 mẩu tin có khóa là các số nguyên: 5, 6, 2, 2, 10,
12, 9, 10, 9 và 3 các bước trong bảng sau cho ta biết đang sử dụng phương pháp sắp xếp nào
 Phương pháp sắp xếp lựa chọn
 Phương pháp nổi bọt
 một phương pháp khác
 *Phương pháp sắp xếp chèn
Câu 61: Giả sử cần Sắp xếp mảng gồm 10 mẩu tin có khóa là các số nguyên: 5, 6, 2, 2, 10,
12, 9, 10, 9 và 3 các bước trong bảng sau cho ta biết đang sử dụng phương pháp sắp xếp nào
 một phương pháp khác
 Phương pháp sắp xếp lựa chọn
 Phương pháp sắp xếp chèn
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
 *Phương pháp nổi bọt
Câu 62: Giải thuật là gì?
 giải thuật là một cách để giải bài toán nào đó chỉ bằng ngôn ngữ.
 giải thuật là một cách để giải bài toán nào đó bằng phương pháp lưu đồ
 *giải thuật là một cách để giải bài toán nào đó, nhưng nó phải áp dụng được cho mọi
bài toán cùng loại.
 giải thuật là một cách để giải bài toán nào đó.Cũng có thể chỉ đúng cho một vài tr-ờng
hợp đặc biệt .
Câu 63: Thế nào là ngôn ngữ giả?
 Ngôn ngữ giả là ngôn ngữ lập trình pascal, C, hay một ngôn ngữ bậc cao khác.
 Ngôn ngữ giả là ngôn ngữ do ngưuoi lập trình định nghĩa.
 Ngôn ngữ giả là cấu trúc của môt chuương trình chỉ viết bằng ngôn ngữ Pascal mà tuỳ
thuộc vào nguười lập trình.
 *Ngôn ngữ giả là sự kết hợp của ngôn ngữ tự nhiên và các cấu trúc của một ngôn ngữ
lập trình nào đó.
Câu 64: Hãy sắp xếp thứ tự 3 giai đoạn để giải quyết bài toán
 *B,C,A
 A,B,C
 C,A,B
 B,A,C
 (A) Chọn một cách cài đặt một kiểu dữ liệu trừu tượng và thay ngôn ngữ giả bằng các
mã lệnh của 1 ngôn ngữ lập trình . Kết quả là ta được 1 chương trình hoàn chỉnh có
thể giải quyết được vấn đề đặt ra.
 (C) Giải thuật được trình bày bằng ngôn ngữ giả dựa trên các kiểu dữ liệu trừu tượng.
 (B) Xây dựng mô hình toán thích hợp cho bài toán và tìm một giải thuật giải quyết bài
toán trên mô hình đó.
Câu 65: Bài toán tô màu đồ thị:
 *2 màu
 1 màu
 Tô màu cho các đỉnh của đồ thị sao cho số màu được dùng là ít nhất và 2 đỉnh kề nhau
(có cung nối) không được tô cùng 1 màu. Với đồ thị sau ta có thể tô tối thiểu bao
nhiêu màu:
 3 màu
 4 màu
Câu 66: Thời gian chạy chương trình phụ thuộc vào các yếu tố nào
 *Tất cả các yếu tố nêu ra
 Độ phức tạp tính toán của giải thuật.
 Tính chất của trình biên dich được dùng.
 Tôc độ của máy được dùng.
 Dữ liệu đầu vào.
Câu 67: Giả sử chương trình A có thời gian chạy chương trình T1(n)=n^2(n mũ 2)
Giả sử chương trình B có thời gian chay chương trình 4*n+1
với n càng lớn thì chương trình nào tốt hơn
 chương trình A = chương trình B
 *chương trình B tốt hơn chương trình A
 chương trình A tốt hơn chương trình B
Câu 68: Nếu T1(n) và T2(n) là thời gian chạy của 2 đoạn chương trình P1 ,P2. Thời gian chạy
của hai chuơng trình P1, P2 nối nhau là:
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
 *T=T1+T2
 T=T1/T2
 T = T1 T2
 T=T1-T2
Câu 69: Nếu T1(n) và T2(n) là thời gian chạy của 2 đoạn chương trình P1 ,P2. Thời gian chạy
của hai chuơng trình P1, P2 lồng nhau là
 T=T1+T2
 *T=T1*T2
 T=T1/T2
 T=T1-T2
Câu 70: Thời gian chạy của các lệnh gán ,Read,Write là:
 O(2)
 *O(1)
 O(n)
 O(3)
Câu 71: Thời gian chạy của một chuỗi tuần tự áp dụng quy tắc
 Quy tắc Nhân
 Quy tắc Nhân đôi
 Quy tắc Trừ
 *Quy tắc Cộng
Câu 72:
 O(3)
 O(1)
 *O(n)
 O(nlogn)
Phần 6
Câu 1: Cho lệnh gán X := F với F = 5X + 7Y , X=6, Y =X + 2. Sau lệnh này X có giá trị:
 53
 71
 72
 *86
Câu 2: Cho lệnh gán X := F với F = arctg(x) , x = Pi / 4 . Sau lệnh gán này X có giá trị
 3
 Pi
 1
 *2
Câu 3: Cho điều kiện if B then ( y = 7x + 3 ) else ( y = x^2 + 1 ), B là điều kiện x> 7. Khi x=7
thì y có giá trị là :
 47
 *50
 52
 51
Câu 4: Cho lệnh lặp: for i:=1 to 4 do y=3i + 6 . Hãy xác định các kết quả thu được:
 7,10,13,16
 5,8,11,14
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
 3,6,9,12
 *9,12,15,18
Câu 5: Cho lệnh While B do x^2 + 7, trong đó B là x>3. Khi kiểm tra điều kiện B thì thấy
x=3. Kết quả của lệnh này là :
 *Không thực hiện được phép tính nào cả
 =15
 =16
 =7
Câu 6:
 4,11,18,25,32,39,46
 Không được gì cả
 4,11,18,25,32,39,46,53,60,67
 *4,11,18,25,32
Câu 4: Để đổi chỗ 2 phần tử a7, a9 ta đưa thêm một tham số X và ta thực hiện dãy lệnh sau
đây:
 a7:=a9 ; a9:=a7 ; X:= a7
 X:=a9 ; a7:=X ; a9:=a7
 *X:=a7 ; a7:=a9 ; a9=X
 X:=a7 ; a9:=X ; a7:=a9
Câu 5: Trong giải thuật con mã đi tuần, nếu đầu tiên con mã ở ô (2,7) ( số đầu tiên là dòng, số
thứ 2 là cột) thì quân mã có thể đi đến các ô:
 (1,5),(2,7),(4,6),(5,8)
 (1,6),(2,7),(3,8),(4,6)
 *(1,5),(3,5),(4,6),(4,8)
 (3,7),(4,6),(4,8),(1,5)
Câu 6: Trong giải thuật xếp 8 con hậu, nếu đã có con hậu ở ô (5,3) thì không con hậu nào
được nằm ở ô :
 (8,1)
 (4,5)
 *(7,5)
 (2,4)
Câu 10: Trong giải thuật xếp 8 con hậu, nếu có con hậu ở ô (4,5) thì không con hậu nào được
ở ô:
 (2,3)
 (6,4)
 (3,7)
 *(1,8)
Câu 11: Trên 1 bàn cờ, những ô nằm trên cùng một đường chéo từ dưói lên với ô (i,j) có hệ
thức :
 *(hàng + cột)=i+j
 (hàng + cột)=i-j
 (hàng - cột)=i+j
 (hàng - côt)=i-j
Câu 12: Trên 1 bàn cờ, những ô nằm trên cùng 1 đường chéo từ trên xuống với ô (i,j) có hệ
thức
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
 hàng-cột=i+j
 hàng+cột=i-j
 hàng+cột=i+j
 *hàng-cột=i-j
Câu 13: Trong giải thuật xếp 8 con hậu, nếu có con hậu đã ở ô (2,3) thì không con hậu nào
được ở ô :
 (6,4)
 *(7,8)
 (5,2)
 (5,7)
Câu 14: Khi dùng giải thuật đệ quy để thực hiện bài toán tháp Hà Nội, nếu tháp có 5 vòng thì
ta phải thực hiện bao nhiêu thao tác:
 64
 70
 *31
 15
Câu 15: Trong số các phép toán sau đây, phép toán nào không được dùng đối với mảng:
 *Bổ xung một phần tử vào mảng
 Tạo mảng
 Tìm kiếm trên mảng
 Lưu trữ mảng
Câu 16: Cho mảng một chiều A=(a1,a2,…,ax,…,an) và được lưu trữ liên tiếp. Giả thử mỗi
phần tử của mảng chiếm 3 ô và phần tử đầu tiên F(1) có địa chỉ 23 thì phần tử F(4) có địa chỉ:
 70
 52
 15
 *41
Câu 17: Cho mảng 2 chiều : A={F( i j)} i là chỉ số hàng, j là chỉ số cột. Mảng A có 8 hàng, 9
cột. Lưu trữ liên tiếp mảng A ưu tiên hàng. Nếu phần tử F(11) có địa chỉ 50, mỗi phần tử
chiếm 3 ô thì phần tử F(57) có địa chỉ:
 152
 *176
 148
 162
Câu 18: Cho mảng 2 chiều A={F( i j)}: i là chỉ số hàng, j là chỉ số cột. Mảng A có 8 hàng, 9
cột. Lưu trữ liên tiếp mảng A ưu tiên cột nếu phần tử F(11) có địa chỉ 230 , mỗi phần tử
chiếm 3 ô thì phần tử F(37) có địa chỉ:
 382
 *380
 378
 420
Câu 19:
 Ưu tiên cột
 *Ưu tiên hàng
 Trong mọi trường hợp
Câu 20:
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
 *Ưu tiên cột
 Trong mọi trường hợp
 Ưu tiên hàng
Câu 21: Dùng phương pháp lưu trữ liên tiếp để lưu trữ một ma trận ( mảng hai chiều) có
nhược điểm lớn nhất là :
 Cần một lượng ô nhớ lớn
 Khó tìm kiếm
 *Lãng phí ô nhớ khi ma trận thưa
Câu 22: .Dùng STACK để lưu trữ số nhị phân có giá trị bằng số thập phân 215 ta có kết quả: (
số bên trái vào trước số bên phải )
 11001110
 *11101011
 11110011
 10111101
Câu 25:
 17
 10
 *18
 8
Câu 26:
 *b(17)
 b(18)
 b(20)
 b(21)
Câu 27: Cho cây nhị phân T. Phép duyệt thứ tự trước cho kết quả là
 ADBCEFG
 AEBDCGF
 AEDBCFG
 *ABDECFG
Câu 28: Cho cây nhị phân T. Phép duyệt thứ tự giữa cho ta kết quả là:
 *DBEAFCG
 BEDACFG
 DEBAGFC
 DBEACFG
Câu 29: Cho cây nhị phân T. Phép duyệt thứ tự sau cho ta biết kết quả là:
 EBFCGAD
 *DEBFGCA
 DEBGCFA
 DBEFAGC
Câu 30: Cho cây nhị phân T. Phép duyệt cây theo thứ tự trước cho kết quả ABDEHCFIGJ.
Nếu duyệt theo thứ tự giữa ta có kết quả: DBHEAFICGJ. Hãy cho biết các nút của cây con
trái:
Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com)
lOMoARcPSD|10727893
trac-nghiem-cau-truc-du-lieu-va-giai-thuat.pdf
trac-nghiem-cau-truc-du-lieu-va-giai-thuat.pdf
trac-nghiem-cau-truc-du-lieu-va-giai-thuat.pdf
trac-nghiem-cau-truc-du-lieu-va-giai-thuat.pdf
trac-nghiem-cau-truc-du-lieu-va-giai-thuat.pdf
trac-nghiem-cau-truc-du-lieu-va-giai-thuat.pdf

More Related Content

Similar to trac-nghiem-cau-truc-du-lieu-va-giai-thuat.pdf

Bai10 stack queue
Bai10 stack queueBai10 stack queue
Bai10 stack queueHồ Lợi
 
Bai3 timkiem sapxep
Bai3 timkiem sapxepBai3 timkiem sapxep
Bai3 timkiem sapxepHồ Lợi
 
Bai3 timkiemsapxep
Bai3 timkiemsapxepBai3 timkiemsapxep
Bai3 timkiemsapxepnhà tôi
 
K33103350 tran doankimnhu_bai17_tin11
K33103350 tran doankimnhu_bai17_tin11K33103350 tran doankimnhu_bai17_tin11
K33103350 tran doankimnhu_bai17_tin11Tin5VungTau
 
Ctdl C05
Ctdl C05Ctdl C05
Ctdl C05giang
 
ThiếT Kế Và đáNh Giá ThuậT ToáN
ThiếT Kế Và đáNh Giá ThuậT ToáNThiếT Kế Và đáNh Giá ThuậT ToáN
ThiếT Kế Và đáNh Giá ThuậT ToáNguest717ec2
 
Chap4 new (tran dai's conflicted copy 2013 04-02)
Chap4 new (tran dai's conflicted copy 2013 04-02)Chap4 new (tran dai's conflicted copy 2013 04-02)
Chap4 new (tran dai's conflicted copy 2013 04-02)Loc Tran
 
Ctdl C06
Ctdl C06Ctdl C06
Ctdl C06giang
 
Kiểu mảng(tt)_Võ Tâm Long_Copyright 2015
Kiểu mảng(tt)_Võ Tâm Long_Copyright 2015Kiểu mảng(tt)_Võ Tâm Long_Copyright 2015
Kiểu mảng(tt)_Võ Tâm Long_Copyright 2015Võ Tâm Long
 
Thuyết trình Cây Nhị Phân
Thuyết trình Cây  Nhị PhânThuyết trình Cây  Nhị Phân
Thuyết trình Cây Nhị PhânSad Rain
 
Bài 11 Kiểu mảng(tt)
Bài 11 Kiểu mảng(tt)Bài 11 Kiểu mảng(tt)
Bài 11 Kiểu mảng(tt)Võ Tâm Long
 
Giáo trình Phân tích và thiết kế giải thuật - CHAP 4
Giáo trình Phân tích và thiết kế giải thuật - CHAP 4Giáo trình Phân tích và thiết kế giải thuật - CHAP 4
Giáo trình Phân tích và thiết kế giải thuật - CHAP 4Nguyễn Công Hoàng
 
Bai giang 4 thuat toan
Bai giang 4   thuat toanBai giang 4   thuat toan
Bai giang 4 thuat toanladoga
 
Thuat toan tin hoc
Thuat toan tin hocThuat toan tin hoc
Thuat toan tin hocladoga
 

Similar to trac-nghiem-cau-truc-du-lieu-va-giai-thuat.pdf (20)

Bai10 stack queue
Bai10 stack queueBai10 stack queue
Bai10 stack queue
 
C6 stack queue
C6 stack queueC6 stack queue
C6 stack queue
 
Bai3 timkiem sapxep
Bai3 timkiem sapxepBai3 timkiem sapxep
Bai3 timkiem sapxep
 
Bai3 timkiemsapxep
Bai3 timkiemsapxepBai3 timkiemsapxep
Bai3 timkiemsapxep
 
K33103350 tran doankimnhu_bai17_tin11
K33103350 tran doankimnhu_bai17_tin11K33103350 tran doankimnhu_bai17_tin11
K33103350 tran doankimnhu_bai17_tin11
 
Ctdl C05
Ctdl C05Ctdl C05
Ctdl C05
 
ThiếT Kế Và đáNh Giá ThuậT ToáN
ThiếT Kế Và đáNh Giá ThuậT ToáNThiếT Kế Và đáNh Giá ThuậT ToáN
ThiếT Kế Và đáNh Giá ThuậT ToáN
 
Chap4 new (tran dai's conflicted copy 2013 04-02)
Chap4 new (tran dai's conflicted copy 2013 04-02)Chap4 new (tran dai's conflicted copy 2013 04-02)
Chap4 new (tran dai's conflicted copy 2013 04-02)
 
Ctdl C06
Ctdl C06Ctdl C06
Ctdl C06
 
Chap4 new
Chap4 newChap4 new
Chap4 new
 
CHƯƠNG 2.pdf
CHƯƠNG 2.pdfCHƯƠNG 2.pdf
CHƯƠNG 2.pdf
 
Thuat Toan
Thuat ToanThuat Toan
Thuat Toan
 
Thuat Toan 2
Thuat Toan 2Thuat Toan 2
Thuat Toan 2
 
Kiểu mảng(tt)_Võ Tâm Long_Copyright 2015
Kiểu mảng(tt)_Võ Tâm Long_Copyright 2015Kiểu mảng(tt)_Võ Tâm Long_Copyright 2015
Kiểu mảng(tt)_Võ Tâm Long_Copyright 2015
 
Thuyết trình Cây Nhị Phân
Thuyết trình Cây  Nhị PhânThuyết trình Cây  Nhị Phân
Thuyết trình Cây Nhị Phân
 
Bài 11 Kiểu mảng(tt)
Bài 11 Kiểu mảng(tt)Bài 11 Kiểu mảng(tt)
Bài 11 Kiểu mảng(tt)
 
Giáo trình Phân tích và thiết kế giải thuật - CHAP 4
Giáo trình Phân tích và thiết kế giải thuật - CHAP 4Giáo trình Phân tích và thiết kế giải thuật - CHAP 4
Giáo trình Phân tích và thiết kế giải thuật - CHAP 4
 
Bai giang 4 thuat toan
Bai giang 4   thuat toanBai giang 4   thuat toan
Bai giang 4 thuat toan
 
Thuat toan tin hoc
Thuat toan tin hocThuat toan tin hoc
Thuat toan tin hoc
 
Chuong2 de qui
Chuong2 de quiChuong2 de qui
Chuong2 de qui
 

Recently uploaded

Phân tích mô hình PESTEL Coca Cola - Nhóm 4.pptx
Phân tích mô hình PESTEL Coca Cola - Nhóm 4.pptxPhân tích mô hình PESTEL Coca Cola - Nhóm 4.pptx
Phân tích mô hình PESTEL Coca Cola - Nhóm 4.pptxtung2072003
 
2020.Catalogue CÁP TR131321313UNG THẾ.pdf
2020.Catalogue CÁP TR131321313UNG THẾ.pdf2020.Catalogue CÁP TR131321313UNG THẾ.pdf
2020.Catalogue CÁP TR131321313UNG THẾ.pdfOrient Homes
 
Catalogue-thiet-bi-chieu-sang-DUHAL-2023.pdf
Catalogue-thiet-bi-chieu-sang-DUHAL-2023.pdfCatalogue-thiet-bi-chieu-sang-DUHAL-2023.pdf
Catalogue-thiet-bi-chieu-sang-DUHAL-2023.pdfOrient Homes
 
Tạp dề là gì? Tổng hợp các kiểu dáng tạp dề xu hướng
Tạp dề là gì? Tổng hợp các kiểu dáng tạp dề xu hướngTạp dề là gì? Tổng hợp các kiểu dáng tạp dề xu hướng
Tạp dề là gì? Tổng hợp các kiểu dáng tạp dề xu hướngMay Ong Vang
 
Catalogue cáp điện GOLDCUP 2023(kỹ thuật).pdf
Catalogue cáp điện GOLDCUP 2023(kỹ thuật).pdfCatalogue cáp điện GOLDCUP 2023(kỹ thuật).pdf
Catalogue cáp điện GOLDCUP 2023(kỹ thuật).pdfOrient Homes
 
Catalog Dây cáp điện CADIVI ky thuat.pdf
Catalog Dây cáp điện CADIVI ky thuat.pdfCatalog Dây cáp điện CADIVI ky thuat.pdf
Catalog Dây cáp điện CADIVI ky thuat.pdfOrient Homes
 
CATALOGUE ART-DNA 2023-2024-Orient Homes.pdf
CATALOGUE ART-DNA 2023-2024-Orient Homes.pdfCATALOGUE ART-DNA 2023-2024-Orient Homes.pdf
CATALOGUE ART-DNA 2023-2024-Orient Homes.pdfOrient Homes
 
Catalog ống nước Europipe upvc-ppr2022.pdf
Catalog ống nước Europipe upvc-ppr2022.pdfCatalog ống nước Europipe upvc-ppr2022.pdf
Catalog ống nước Europipe upvc-ppr2022.pdfOrient Homes
 
CATALOGUE Cáp điện Taya (FR, FPR) 2023.pdf
CATALOGUE Cáp điện Taya (FR, FPR) 2023.pdfCATALOGUE Cáp điện Taya (FR, FPR) 2023.pdf
CATALOGUE Cáp điện Taya (FR, FPR) 2023.pdfOrient Homes
 
Dây cáp điện Trần Phú Eco - Catalogue 2023.pdf
Dây cáp điện Trần Phú Eco - Catalogue 2023.pdfDây cáp điện Trần Phú Eco - Catalogue 2023.pdf
Dây cáp điện Trần Phú Eco - Catalogue 2023.pdfOrient Homes
 
Catalogue Cadisun CÁP HẠ THẾ (26-09-2020).pdf
Catalogue Cadisun CÁP HẠ THẾ (26-09-2020).pdfCatalogue Cadisun CÁP HẠ THẾ (26-09-2020).pdf
Catalogue Cadisun CÁP HẠ THẾ (26-09-2020).pdfOrient Homes
 
CATALOG cáp cadivi_1.3.2024_compressed.pdf
CATALOG cáp cadivi_1.3.2024_compressed.pdfCATALOG cáp cadivi_1.3.2024_compressed.pdf
CATALOG cáp cadivi_1.3.2024_compressed.pdfOrient Homes
 
catalogue-cap-trung-va-ha-the-ls-vina.pdf
catalogue-cap-trung-va-ha-the-ls-vina.pdfcatalogue-cap-trung-va-ha-the-ls-vina.pdf
catalogue-cap-trung-va-ha-the-ls-vina.pdfOrient Homes
 
CATALOG Đèn, thiết bị điện ASIA LIGHTING 2023.pdf
CATALOG Đèn, thiết bị điện ASIA LIGHTING 2023.pdfCATALOG Đèn, thiết bị điện ASIA LIGHTING 2023.pdf
CATALOG Đèn, thiết bị điện ASIA LIGHTING 2023.pdfOrient Homes
 

Recently uploaded (14)

Phân tích mô hình PESTEL Coca Cola - Nhóm 4.pptx
Phân tích mô hình PESTEL Coca Cola - Nhóm 4.pptxPhân tích mô hình PESTEL Coca Cola - Nhóm 4.pptx
Phân tích mô hình PESTEL Coca Cola - Nhóm 4.pptx
 
2020.Catalogue CÁP TR131321313UNG THẾ.pdf
2020.Catalogue CÁP TR131321313UNG THẾ.pdf2020.Catalogue CÁP TR131321313UNG THẾ.pdf
2020.Catalogue CÁP TR131321313UNG THẾ.pdf
 
Catalogue-thiet-bi-chieu-sang-DUHAL-2023.pdf
Catalogue-thiet-bi-chieu-sang-DUHAL-2023.pdfCatalogue-thiet-bi-chieu-sang-DUHAL-2023.pdf
Catalogue-thiet-bi-chieu-sang-DUHAL-2023.pdf
 
Tạp dề là gì? Tổng hợp các kiểu dáng tạp dề xu hướng
Tạp dề là gì? Tổng hợp các kiểu dáng tạp dề xu hướngTạp dề là gì? Tổng hợp các kiểu dáng tạp dề xu hướng
Tạp dề là gì? Tổng hợp các kiểu dáng tạp dề xu hướng
 
Catalogue cáp điện GOLDCUP 2023(kỹ thuật).pdf
Catalogue cáp điện GOLDCUP 2023(kỹ thuật).pdfCatalogue cáp điện GOLDCUP 2023(kỹ thuật).pdf
Catalogue cáp điện GOLDCUP 2023(kỹ thuật).pdf
 
Catalog Dây cáp điện CADIVI ky thuat.pdf
Catalog Dây cáp điện CADIVI ky thuat.pdfCatalog Dây cáp điện CADIVI ky thuat.pdf
Catalog Dây cáp điện CADIVI ky thuat.pdf
 
CATALOGUE ART-DNA 2023-2024-Orient Homes.pdf
CATALOGUE ART-DNA 2023-2024-Orient Homes.pdfCATALOGUE ART-DNA 2023-2024-Orient Homes.pdf
CATALOGUE ART-DNA 2023-2024-Orient Homes.pdf
 
Catalog ống nước Europipe upvc-ppr2022.pdf
Catalog ống nước Europipe upvc-ppr2022.pdfCatalog ống nước Europipe upvc-ppr2022.pdf
Catalog ống nước Europipe upvc-ppr2022.pdf
 
CATALOGUE Cáp điện Taya (FR, FPR) 2023.pdf
CATALOGUE Cáp điện Taya (FR, FPR) 2023.pdfCATALOGUE Cáp điện Taya (FR, FPR) 2023.pdf
CATALOGUE Cáp điện Taya (FR, FPR) 2023.pdf
 
Dây cáp điện Trần Phú Eco - Catalogue 2023.pdf
Dây cáp điện Trần Phú Eco - Catalogue 2023.pdfDây cáp điện Trần Phú Eco - Catalogue 2023.pdf
Dây cáp điện Trần Phú Eco - Catalogue 2023.pdf
 
Catalogue Cadisun CÁP HẠ THẾ (26-09-2020).pdf
Catalogue Cadisun CÁP HẠ THẾ (26-09-2020).pdfCatalogue Cadisun CÁP HẠ THẾ (26-09-2020).pdf
Catalogue Cadisun CÁP HẠ THẾ (26-09-2020).pdf
 
CATALOG cáp cadivi_1.3.2024_compressed.pdf
CATALOG cáp cadivi_1.3.2024_compressed.pdfCATALOG cáp cadivi_1.3.2024_compressed.pdf
CATALOG cáp cadivi_1.3.2024_compressed.pdf
 
catalogue-cap-trung-va-ha-the-ls-vina.pdf
catalogue-cap-trung-va-ha-the-ls-vina.pdfcatalogue-cap-trung-va-ha-the-ls-vina.pdf
catalogue-cap-trung-va-ha-the-ls-vina.pdf
 
CATALOG Đèn, thiết bị điện ASIA LIGHTING 2023.pdf
CATALOG Đèn, thiết bị điện ASIA LIGHTING 2023.pdfCATALOG Đèn, thiết bị điện ASIA LIGHTING 2023.pdf
CATALOG Đèn, thiết bị điện ASIA LIGHTING 2023.pdf
 

trac-nghiem-cau-truc-du-lieu-va-giai-thuat.pdf

  • 1. Studocu is not sponsored or endorsed by any college or university Trắc nghiệm cấu trúc dữ liệu và giải thuật marketing (Trường Đại học Kinh tế - Kỹ thuật Công nghiệp) Studocu is not sponsored or endorsed by any college or university Trắc nghiệm cấu trúc dữ liệu và giải thuật marketing (Trường Đại học Kinh tế - Kỹ thuật Công nghiệp) Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 2. Cấu trúc dữ liệu và giải thuật - TH24.01 Phần 1: Câu 1: Giải thuật đệ quy là:  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ả.  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.  Trong giải thuật của nó có lời gọi tới chính nó.  *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. Câu 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à:  Tăng lên 1  N=0  *Giảm đi 1  N=1 Câu 3: Có 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à:  Lặp vô hạn  *Điều kiện dừng đệ quy  Điều kiện không thực hiện đệ quy  Lặp 1 lần Câu 4: Có 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;  Tính số cặp thỏ sau n tháng  *Tính giai thừa n  Tính n^n (n mũ n).  Tính tích: 1*2*3*…*n Câu 5: Có Hàm đệ qui sau: Function Factorial(n) Begin if n=0 then Factorial:=1 else Factorial := n*Factorial(n-1); End; Kết quả bằng bao nhiêu khi n=3  *6  9 Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 3.  2  8 Câu 6: Hàm đệ qui cho kết quả thế nào? Function Factorial(n) Begin Factorial := n*Factorial(n-1); End;  *Lặp vô hạn vì không có điều kiện dừng  Tính giai thừa n  Tính số cặp thỏ sau n tháng.  Chương trình báo lỗi Câu 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?  9 cặp  *5 cặp  12 cặp  10 cặp Câu 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ò:  *Điều kiện dừng đệ quy  Lặp 1 lần  Điều kiện không thực hiện đệ quy  Lặp vô hạn Câu 9: Cho giải thuật đệ quy sau: Function F(n:integer):integer; Begin if n<=2 then F:=1 else F := F(n-2) + F(n-1) End; Khi n=4 kết quả của bài toán trên là:  *3  8  11  10 Câu 10: Đặc điểm của giải thuật đệ quy:  *Tất cả đều đúng  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 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 Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 4.  Trong thủ tục đệ quy có lời gọi đến chính thủ tục đó Câu 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?  8 bước  14 bước  *15 bước  16 bước Câu 12: Danh sách tuyến tính là:  Danh sách tuyến tính là một danh sách có dạng (a1, a2, ..., an).  *Danh sách mà quan hệ lân cận giữa các phần tử được xác định.  Danh sách dạng được lưu dưới dạng mảng.  Danh sách tuyến tính là một danh sách rỗng. Câu 13: ưu điểm của việc cài đặt danh sách bằng mảng:  *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ử.  Có thể thay đổi số lượng phần tử theo ý muốn của người dùng.  Có thể bổ sung hoặc xóa một phần tử bất kỳ trong mảng.  Tất cả các ý trên đều đúng. Câu 14: Danh sách tuyến tính dạng ngăn xếp là:  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.  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.  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.  *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 . Câu 15: Danh sách tuyến tính dạng ngăn xếp làm việc theo nguyên tắc:  FIFO( first in first out)  LILO(last in last out)  FOLO( fisrt out last out)  *LIFO(last in first out) Câu 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:  Mảng (array)  Hàng đợi(Queue)  *Ngăn xếp (stack) Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 5.  Bản gCâu Record) Câu 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.  *ứng dụng ngăn xếp để đổi số N từ cơ số 10 sang cơ số 2  ứng dụng ngăn xếp để tính số dư trong phép chia N cho 2  ứng dụng ngăn xếp để Đưa giá trị N vào ngăn xếp và lấy ra giá trị N  ứng dụng ngăn xếp để thay N bằng thương của phép chia N cho 2 Câu 18: định nghĩa danh sách tuyến tính Hàng đợi (Queue)  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.  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.  *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).  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âu 19: Hàng đợi còn được gọi là danh sách kiểu:  LOLO  FILO  LIFO  *FIFO Câu 20: Để thêm một đối tượng x bất kỳ vào Stack, thao tác thường dùng là:  EMPTY(x).  TOP(x).  *PUSH(x).  POP(x). Câu 21: Để lấy loại bỏ một đối tượng ra khỏi Stack, thao tác thường dùng là: “  FULL(x)  EMPTY(x)  *POP(x)  PUSH(x) Câu 22: Để biểu diễn Stack, ta thường sử dụng kiểu dữ liệu nào sau đây?  Kiểu bản ghi  *Danh sách móc nối và mảng dữ liệu Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 6.  Danh sách móc nối  Mảng dữ liệu Câu 23: Thao tác POP(x) dùng trong Stack là để:  Xóa bỏ một phần tử bất kì khỏi Stack  Xóa bỏ một dãy các phần tử ra khỏi Stack  Lấy phần tử đầu tiên ra khỏi Stack  *Lấy một phần tử cuối cùng ra khỏi đỉnh Stack Câu 24: Thao tác Push(x) dùng trong Stack là để:  Bổ sung một dãy các phần tử vào đỉnh Stack.  Bổ sung một phần tử bất kì vào Stack  *Bổ sung một phần tử vào đỉnh Stack  Bổ sung một phần tử vào đầu Stack Câu 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?  POP(23),PUSH(25).  POP(25),PUSH(23)  *POP(25),POP(23), PUSH(25)  POP(25),POP(23) Câu 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ứ 5 trong Stack ta phải làm thế nào?  POP(25),POP(23), PUSH(23)  *POP(25)  POP(23),PUSH(25)  POP(25),PUSH(23) Câu 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ứ 3 trong Stack ta phải làm thế nào?  *POP(25), POP(23), POP(20), PUSH(23), PUSH(25)  POP(25), POP(23), PUSH(20), PUSH(25), PUSH(23)  POP(25), POP(23), POP(20)  POP(25), POP(23), POP(20), PUSH(25), PUSH(23) Câu 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;  Kiểm tra Stack có tràn không  Kiểm tra Stack có cạn không  *Bổ sung một phần tử vào Stack  Loại bỏ một phân tử ra khỏi Stack Câu 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;  TOP  FULL Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 7.  POP  *PUSH Câu 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;  Bổ sung một phần tử ra khỏi Stack  Kiểm tra Stack có cạn không  *Loại bỏ một phần tử vào Stack  Kiểm tra Stack có tràn không Câu 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;  NULL  PUSH  TOP  *POP Câu 32: Với đoạn mã sau, nếu n=13, trong Stack sẽ là: While n<>0 do begin R:=n mod 2; Push(R); n:=n div 2; end;  13  6  *1101  1011 Câu 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 , 3 , 6  1 , 1 , 0 , 1  *1 , 0 , 1 , 1  6 , 3 , 1 Câu 34: 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? While T>0 do begin Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 8. R:=POP(S[T]); write(R); end;  1011  1101  *1, 0 , 1 , 1  1, 1 , 0 , 1 Câu 35: 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à:  *Queue rỗng  Kiểm tra chỉ số trước và chỉ số sau của Queue có bằng nhau không.  Queue tràn  Đặt phần tử đầu và phần tử cuối của Queue bằng 0 Câu 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?  F=F+1, R không thay đổi  *F không thay đổi, R=R+1  F=F-1, R không thay đổi  F không thay đổi, R=R-1 Câu 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ử vào Queue, thì R và F thay đổi thế nào?  F=F-1, R không thay đổi  F không thay đổi, R=R+1  F không thay đổi, R=R-1  *F=F+1, R không thay đổi Câu 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;  Kiểm tra Queue có rỗng không  Loại bỏ một phần tử vào Queue  *Bổ sung một phần tử vào Queue  Kiểm tra Queue có tràn không Câu 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; Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 9. return end; if F=n then F:=1 else F:=F+1; Q:=Y; End;  Bổ sung một phần tử vào Queue  Kiểm tra Queue có tràn không  *Loại bỏ một phần tử vào Queue  Kiểm tra Queue có rỗng không Câu 40: Giải thuật sau thực hiện việc gì? Function P(l:ds): boolean; Begin P:= (l.last =0); End;  *Kiểm tra danh sách có rỗng không  Cho phần tử cuối cùng trong danh sách bằng 0  Làm rỗng danh sách  Không có đáp án nào đúng. Câu 41: Giải thuật sau thực hiện việc gì? Procedure P( l:ds); Begin l.last := 0; End;  Cho phần tử cuối cùng trong danh sách bằng 0  Kiểm tra danh sách có rỗng không  *Làm rỗng danh sách”  Không có đáp án nào đúng. Câu 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;  *Chèn phần tử x vào vị trí P trong danh sách  Bổ sung phần tử x vào đầu danh sách  Bổ sung phần tử x vào cuối danh sách  Không đáp án nào đúng Câu 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;  Không đáp án nào đúng Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 10.  Xoá phần tử cuối cùng trong danh sách  *Xoá một phần tử tại vị trí P trong danh sách  Xoá phần tử đầu tiên trong danh sách Câu 44: Trong biểu diễn dữ liệu dưới dạng cây, cấp của cây chính  Tổng số nút trên cây  Cấp cao nhất của nút gốc  Cấp cao nhất của nút lá  *Cấp cao nhất của một nút trên cây Câu 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à:  *Lá  Không có đáp án nào đúng  Phần tử cuối cùng trong cây  Gốc Câu 46: Mỗi nút trong cây có tối đa:  3 nút con  1 nút con  2 nút con  *Nhiều nút con Câu 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à:  2*i + 1  i+1  *2*i  i-1 Câu 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à:  2*i  i+1  i-1  *2*i + 1 Câu 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à:  6  7  4  *6 và 7 Câu 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à:  7  *6  2  4 Câu 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à:  *7  4  6 Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 11.  2 Câu 53: Duyệt cây nhị phân theo thứ tự trước được thực hiện theo thứ tự:  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.  *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.  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.  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. Câu 54: Duyệt cây nhị phân theo thứ tự giữa được thực hiện theo thứ tự:  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.  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.  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.  *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. Câu 55: Duyệt cây nhị phân theo thứ tự sau được thực hiện theo thứ tự:  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.  Thăm gốc, duyệt cây con trái theo thứ tự sau, duyệt cây con phải theo thứ tự sau.  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.  *Duyệt cây con trái theo thứ tự sau, duyệt cây con phải theo thứ tự sau, thăm gốc. Phần 2: Câu 1: ý tưởng phương pháp sắp xếp chọn tăng dần (select sort)  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.  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.  *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...  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. Câu 2: ý tưởng phương pháp sắp xếp nổi bọt (bubble sort) là:  *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.  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.  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.  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... Câu 3: ý tưởng phương pháp sắp xếp chèn (insertion sort) là:  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.  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...  *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. Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 12.  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. Câu 4: ý tưởng phương pháp sắp xếp nhanh (Quick sort) là:  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...  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.  *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á).  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. Câu 5: Phương pháp sắp xếp nhanh (Quick sort) chính là phương pháp:  *Phân đoạn  Chèn  Trộn  Vun đống Câu 6: ý tưởng phương pháp sắp xếp Trộn (Merge sort) là:  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.  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á).  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...  *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. Câu 7: ý tưởng phương pháp sắp xếp vun đống (Heap sort) là:  *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.  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.  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á).  Tạo đống cho cây nhị phân (cây nhị phân đã được sắp xếp giảm dần). Câu 8: Cơ chế heap trong sắp xếp vun đống là:  *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.  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.  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.  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. Câu 9: Trong giải thuật sắp xếp vun đống, ta có 4 thủ tục con (Insert - thêm 1 phần tử vào cây;Downheap - vun đống lại sau khi loại một phần tử khỏi Heap, Upheap- vun đống sau khi thêm một phần tử vào cây; Remove - loại 1 phần tử khỏi cây nhị phân). Để sắp xếp các phần tử trong dãy theo phương pháp vun đống, ta thực hiện 4 thủ tục trên theo thứ tự như thế nào?  *Insert – Upheap – Remove – Downheap  Remove – Downheap – Insert – Upheap  Insert – Upheap – Downheap – Remove Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 13.  Upheap – Downheap – Remove – Insert Câu 10: Tư tưởng của giải thuật tìm kiếm nhị phân:  *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.  Tìm kiếm dựa vào cây nhị tìm kiếm.  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.  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. Câu 11: Tư tưởng của giải thuật tìm kiếm tuần tự  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.  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.  *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.  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. Câu 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  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.  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.  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.  *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. Câu 13: Cây nhị phân tìm kiếm là:  *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 trái và lớn hơn mọi nút trên cây con phảI của nó.  Là cây nhị phân đầy đủ.  Cây nhị phân thoả tính chất heap  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. Câu 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ị"?  Quick sort, Heap sort  Qucick sort, Insert sort  Quick sort, Bubble sort  *Quick sort, Merge sort Câu 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 Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 14. if a[j] < a[j-1] then begin tg:=a[j]; a[j]:=a[j-1]; a[j-1]:=tg; end; End;  Merge sort  insert sort  *Bubble sort  Select sort Câu 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 x<="" br="">begin a*[j+1]:=a*[j]; j:=j-1; end; a[j+1]:=x; end; End;  *Insert sort”  Merge sort  Bubble sort  Select sort Câu 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 i:=k; i:=b; j:=m+1; while i<=m and j<=n do if x[i] <=x[j] then begin z[k]:=x[i]; i:=i+1; end else begin z[k]:=x[j]; j:=j+1; end; k:=k+1; if i>m then (zk,…,zn):= (xj,…,xn) else (zk,…,zn):= (xi,…,xn) End;  Bubble sort  Insert sort  Select sort  *Merge sort Câu 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<="" br="">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); Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 15. cal F(a, j+1,s); end; End;  *Quick sort  Insert sort  Merge sort  Bubble sort Câu 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à:  {0 1 2 6 5 7 9 3 4 8}  {0 1 2 6 5 7 9 3 8 4}  {0 1 2 3 4 5 6 7 8 9}  *{0 1 3 6 5 7 9 2 8 4} Câu 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à:  {0 1 2 3 4 5 6 7 8 9}  *{0 1 2 6 5 7 9 3 8 4}  {0 1 2 6 5 7 9 3 4 8}  {0 1 2 3 6 5 7 9 8 4} Câu 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à:  {0 1 2 3 4 5 6 7 8 9}  *{0 1 2 3 5 7 9 6 8 4}  {0 1 2 3 5 7 9 4 8 6}  {0 1 2 3 6 5 7 9 8 4} Câu 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à:  {0 1 2 3 4 5 6 7 8 9}  {0 1 2 3 5 7 9 4 8 6}  *{0 1 2 3 4 7 9 6 8 5}  {0 1 2 3 6 5 7 9 8 4} Câu 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à:  {0 1 2 3 4 5 6 9 8 7}  {0 1 2 3 4 5 6 7 8 9}  {0 1 2 3 4 7 9 6 8 5}  *{0 1 2 3 4 5 9 6 8 7} Câu 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à:  {0 1 2 3 4 5 9 6 8 7}  {0 1 2 3 4 5 6 7 8 9}  *{0 1 2 3 4 5 6 9 8 7} Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 16. Câu 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à:  *{0 1 2 3 4 5 6 7 8 9}  {0 1 2 3 4 5 6 9 8 7}  {0 1 2 3 4 5 9 6 8 7} Câu 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à:  {0 1 2 3 4 7 5 9 6 8}  {0 1 2 4 7 3 9 5 6 8}  {0 4 7 1 9 2 5 3 6 8}  *{0 1 4 7 2 9 3 5 6 8} Câu 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à:  *{0 1 2 4 7 3 9 5 6 8}  {0 1 4 7 2 9 3 5 6 8}  {0 4 7 1 9 2 5 3 6 8}  {0 1 2 3 4 7 5 9 6 8} Câu 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à:  {0 1 2 3 4 7 9 5 6 8}  {0 1 2 4 7 3 9 5 6 8}  {0 1 4 7 2 9 3 5 6 8}  *{0 1 2 3 4 7 5 9 6 8} Câu 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à:  {0 1 4 7 2 9 3 5 6 8}  {0 1 2 4 7 3 9 5 6 8}  *{0 1 2 3 4 5 7 6 9 8}  {0 1 2 3 4 7 9 5 6 8} Câu 30: Cho dãy số {4 0 2 8 5 9 6 1 3 7}. áp dụng phương pháp sắp xếp chèn (Insert sort) sau lần lặp đầu tiên của giải thuật ta có kết quả:{0 4 2 8 5 9 6 1 3 7}. Dãy số thu được sau lần lặp thứ hai là:  *{0 2 4 8 5 9 6 1 3 7}  {0 1 4 8 5 9 6 1 3 7}  {0 1 2 8 5 9 6 4 3 7}  {0 4 2 8 5 9 6 1 3 7} Câu 31: Cho dãy số {4 0 2 8 5 9 6 1 3 7}. áp dụng phương pháp sắp xếp chèn (Insert sort) sau lần lặp đầu tiên của giải thuật ta có kết quả:{0 4 2 8 5 9 6 1 3 7}. Dãy số thu được sau lần lặp thứ ba là:  {0 1 2 8 5 9 6 4 3 7}  *{0 2 4 8 5 9 6 1 3 7}  {0 2 3 8 5 9 6 1 4 7}  {0 2 4 5 8 9 6 1 3 7} Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 17. Câu 32: Cho dãy số {4 0 2 8 5 9 6 1 3 7}. áp dụng phương pháp sắp xếp chèn (Insert sort) sau lần lặp đầu tiên của giải thuật ta có kết quả:{0 4 2 8 5 9 6 1 3 7}. Dãy số thu được sau lần lặp thứ bốn là:  *{0 2 4 5 8 9 6 1 3 7}  {0 1 2 3 5 9 6 4 8 7}  {0 1 2 8 5 9 6 4 3 7}  {0 4 2 8 5 9 6 1 3 7} Câu 33: Cho dãy số {4 0 2 8 5 9 6 1 3 7}. áp dụng phương pháp sắp xếp chèn (Insert sort) sau lần lặp đầu tiên của giải thuật ta có kết quả:{0 4 2 8 5 9 6 1 3 7}. Dãy số thu được sau lần lặp thứ năm là:  {0 1 2 3 5 9 6 4 8 7}  {0 1 2 8 5 9 6 4 3 7}  *{0 2 4 5 8 9 6 1 3 7}  {0 1 2 4 5 8 9 6 3 7} Câu 34: Cho dãy số {4 0 2 8 5 9 6 1 3 7}. áp dụng phương pháp sắp xếp chèn (Insert sort) sau lần lặp đầu tiên của giải thuật ta có kết quả:{0 4 2 8 5 9 6 1 3 7}. Dãy số thu được sau lần lặp thứ sáu là:  *{0 2 4 5 6 8 9 1 3 7}  {0 1 2 3 5 9 6 4 8 7}  {0 2 4 5 8 9 6 1 3 7}  {0 1 2 4 5 8 9 6 3 7} Câu 35: Cho dãy số {4 0 2 8 5 9 6 1 3 7}. áp dụng phương pháp sắp xếp chèn (Insert sort) sau lần lặp đầu tiên của giải thuật ta có kết quả:{0 4 2 8 5 9 6 1 3 7}. Dãy số thu được sau lần lặp thứ bảy là:  {0 1 2 3 5 9 6 4 8 7}  {0 2 4 5 8 9 6 1 3 7}  *{0 1 2 4 5 6 8 9 3 7}  {0 1 2 4 5 8 9 6 3 7} Câu 36: Cho dãy số {4 0 2 8 5 9 6 1 3 7}. áp dụng phương pháp sắp xếp chèn (Insert sort) sau lần lặp đầu tiên của giải thuật ta có kết quả:{0 4 2 8 5 9 6 1 3 7}. Dãy số thu được sau lần lặp thứ tám là:  {0 1 2 4 5 6 8 9 3 7}  {0 1 2 3 4 5 6 7 8 9}  *{0 1 2 3 4 5 6 8 9 7}  {0 1 2 3 4 5 8 9 6 7} Câu 37: Cho dãy số {4 0 2 8 5 9 6 1 3 7}. áp dụng phương pháp sắp xếp chèn (Insert sort) sau lần lặp đầu tiên của giải thuật ta có kết quả:{0 4 2 8 5 9 6 1 3 7}. Dãy số thu được sau lần lặp thứ chín là:  {0 1 2 4 5 6 8 9 3 7}  {0 1 2 3 4 5 8 9 6 7}  *{0 1 2 3 4 5 6 7 8 9}  {0 1 2 3 4 5 6 8 9 7} Câu 38: Cho dãy số {3 1 6 0 5 4 8 2 9 7}. áp dụng phương pháp sắp xếp nhanh (Quick sort) sau lần lặp đầu tiên của giải thuật ta có kết quả: {(0 1 2) 3 (5 4 8 6 9 7)}. Dãy số thu được sau lần lặp thứ hai là:  *{0 (1 2) 3 (5 4 8 6 9 7)}  {(0 1 2 3) 4 (5 6 7 8 9)}  {(0 1 2) 3 (5 4 8 6 9 7)} Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 18.  {(3 1 6 0) 5 (4 8 2 9 7)} Câu 39: Cho dãy số {3 1 6 0 5 4 8 2 9 7}. áp dụng phương pháp sắp xếp nhanh (Quick sort) sau lần lặp đầu tiên của giải thuật ta có kết quả: {(0 1 2) 3 (5 4 8 6 9 7)}. Dãy số thu được sau lần lặp thứ ba là:  {(0) 1 (2 3) 4 (5 6) 7 (8 9)}  {(3) 1 (6 0) 5 (4 8) 2 (9 7)}  *{0 1 (2) 3 (5 4 8 6 9 7)}  {0 1 (2) 3 (5 4) 8 (6 9 7)} Câu 40: Cho dãy số {3 1 6 0 5 4 8 2 9 7}. áp dụng phương pháp sắp xếp nhanh (Quick sort) sau lần lặp đầu tiên của giải thuật ta có kết quả: {(0 1 2) 3 (5 4 8 6 9 7)}. Dãy số thu được sau lần lặp thứ bốn là:  {(0) 1 (2 3) 4 (5 6) 7 (8 9)}  {0 1 (2) 3 (5 4) 8 (6 9 7)}  {(3) 1 (6 0) 5 (4 8) 2 (9 7)}  *{0 1 2 3 (5 4 8 6 9 7)} Câu 41: Cho dãy số: 12 2 8 5 1 6 4 15 và các bước sắp xếp sau: Bước 1: 1 2 8 5 12 6 4 15 Bước 2: 1 2 8 5 12 6 4 15 Bước 3: 1 2 4 5 12 6 8 15 Bước 4: 1 2 4 5 12 6 8 15 Bước 5: 1 2 4 5 6 12 8 15 Bước 6: 1 2 4 5 6 8 12 15 Các bước trên dựa theo giải thuật sắp xếp nào?  Quick sort  Insert sort  Bubble sort  *Select sort Câu 42: Cho dãy số: "4 7 0 9 2 5 3 1 8 6" và các bước sắp xếp sau: Bước 1: 0 4 7 1 9 2 5 3 6 8” Bước 2: 0 1 4 7 2 9 3 5 6 8 Bước 3: 0 1 2 4 7 3 9 5 6 8 Bước 4: 0 1 2 3 4 7 5 9 6 8 Bước 5: 0 1 2 3 4 5 7 6 9 8 Bước 6: 0 1 2 3 4 5 6 7 8 9 Các bước trên dựa theo giải thuật sắp xếp nào?  *Bubble sort  Select sort  Quick sort  Insert sort Câu 43: Cho dãy số: "5 1 4 2 7 3" và các bước sắp xếp sau: Bước 1: 1 5 4 2 7 3” Bước 2: 1 4 5 2 7 3 Bước 3: 1 2 4 5 7 3 Bước 4: 1 2 4 5 7 3 Bước 5: 1 2 3 4 5 7 Các bước trên dựa theo giải thuật sắp xếp nào?  Quick sort  Select sort Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 19.  Bubble sort  *Insert sort Câu 44: Cho dãy số "3 1 6 0 5 4 8 2 9 7" và các bước sắp xếp sau: Bước 1: (0 1 2) 3 (5 4 8 6 9 7) Bước 2: 0 (1 2) 3 (5 4 8 6 9 7) Bước 3: 0 1 (2) 3 (5 4 8 6 9 7) Bước 4: 0 1 2 3 (5 4 8 6 9 7) Bước 5: 0 1 2 3 (4) 5 (8 6 9 7) Bước 6: 0 1 2 3 4 5 (8 6 9 7) Bước 7: 0 1 2 3 4 5 (7 6) 8 (9) Bước 8: 0 1 2 3 4 5 (6) 7 8 (9) Bước 9: 0 1 2 3 4 5 6 7 8 (9) Bước 10: 0 1 2 3 4 5 6 7 8 9 Các bước trên dựa theo giải thuật sắp xếp nào?  Merge sort  *Quick sort  Select sort  Insert sort Câu 45: Cho dãy số : 3 1 6 0 5 4 8 2 9 7 và các bước sắp xếp sau: Bước 1: 1 3 6 0 5 4 8 2 9 7 Bước 2: 1 3 6 0 5 4 8 2 9 7 Bước 3: 1 3 6 0 5 4 8 2 9 7 Bước 4: 0 1 3 5 6 4 8 2 9 7 Bước 5: 0 1 3 5 6 4 8 2 9 7 Bước 6: 0 1 3 5 6 2 4 8 9 7 Bước 7: 0 1 3 5 6 2 4 8 7 9 Bước 8: 0 1 3 5 6 2 4 7 8 9 Bước 9: 0 1 2 3 4 5 6 7 8 9 Các bước trên dựa theo giải thuật sắp xếp nào?  Quick sort  *Merge sort  Select sort  Insert sort Câu 46: Cho dãy số : 3 1 6 0 5 4 8 2 9 7 và các bước sắp xếp sau: Bước 1: 1 3 0 6 4 5 2 8 7 9 Bước 2: 0 1 3 6 2 4 5 8 7 9 Bước 3: 0 1 2 3 4 5 6 8 7 9 Bước 4: 0 1 2 3 4 5 6 7 8 9 Các bước trên dựa theo giải thuật sắp xếp nào?  Quick sort  Select sort  Merge sort  *Merge sort hai đường trực tiếp Câu 47: Giải thuật sau thực hiện việc gì trong phương pháp sắp xếp vun đống? Procedure F(v: integer) Begin n:=n+1; a[n]:=v; Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 20. upheap(n); end;  *Bổ sung một phần tử vào cây  Loại bỏ một phần tử ra khỏi cây  Vun đống lại cho cây sau khi loại bỏ một phần tử  Vun đống cho cây sau khi bổ sung một phần tử Câu 48: Giải thuật sau thực hiện việc gì trong phương pháp sắp xếp vun đống? Procedure Upheap(k:integer); Begin V:=a[k]; a[0]:=maxint; while a[k div 2] <= v do begin a[k]:= a[k div 2]; k:=k div 2; end; a[k]:=v; End;  Vun đống cho cây sau khi loại bỏ phần tử  Bổ sung một phần tử vào cây  *Vun đống cho cây sau khi thêm một phần tử  Loại bỏ một phần tử ra khỏi cây Câu 49: Giải thuật sau thực hiện việc gì trong phương pháp sắp xếp vun đống? Procedure Downheap(k:integer) Label 0; Begin v:=a[k]; While k<= n div 2 do begin j:=k*2; if a[j]if v>=a[j] then goto 0; a[k]:=a[j]; k:=j; end; 0: a[k]:=v; End;  Bổ sung một phần tử vào cây  Loại bỏ một phần tử ra khỏi cây  Vun đống cho cây sau khi bổ sung phần tử  *Vun đống lại cho cây sau khi loại bỏ một phần tử Câu 50: Giải thuật sau thực hiện việc gì trong phương pháp sắp xếp vun đống? Function P: integer; Begin P:=a[1]; a[1]:=a[n]; n: =n-1; Downheap(1); End;  Vun đống cho cây sau khi bổ sung phần tử  Vun đống lại cho cây sau khi loại bỏ một phần tử  Bổ sung một phần tử vào cây  *Loại bỏ một phần tử ra khỏi cây Phần 3: Câu 1: Cho dãy số sau: 40 25 75 15 65 55 90 30 95 85. Áp dụng phương pháp sắp xếp lựa chọn, sau lượt 1 dãy sẽ được sắp xếp lại như thế nào? Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 21.  15 40 25 30 75 65 55 85 90 95  *15 25 75 40 65 55 90 30 95 85  40 25 75 15 30 65 55 90 85 95  15 25 40 75 30 55 65 90 85 95 Câu 2: Cho dãy số sau: 40 25 75 15 65 55 90 30 95 85. Áp dụng phương pháp sắp xếp lựa chọn, sau lượt 2 dãy sẽ được sắp xếp lại như thế nào?  15 40 25 30 75 65 55 85 90 95  *15 25 75 40 65 55 90 30 95 85  15 40 25 75 30 55 65 90 85 95  15 25 75 30 40 65 55 90 85 95 Câu 3: Cho dãy số sau: 40 25 75 15 65 55 90 30 95 85. Áp dụng phương pháp sắp xếp lựa chọn, sau lượt 3 dãy sẽ được sắp xếp lại như thế nào?  15 25 75 30 40 65 55 90 85 95  15 40 25 30 75 65 55 85 90 95  *15 25 30 40 65 55 90 75 95 85  15 40 25 30 75 55 65 90 85 95 Câu 4: Cho dãy số sau: 40 25 75 15 65 55 90 30 95 85. Áp dụng phương pháp sắp xếp lựa chọn, sau lượt 4 dãy sẽ được sắp xếp lại như thế nào?  15 40 25 75 30 55 65 90 85 95  15 25 75 30 40 65 55 90 85 95  *15 25 30 40 65 55 90 75 95 85  15 40 25 30 75 65 55 85 90 95 Câu 5: Cho dãy số sau: 40 25 75 15 65 55 90 30 95 85. Áp dụng phương pháp sắp xếp nổi bọt, sau lượt 1 dãy sẽ được sắp xếp lại như thế nào?  *15 40 25 75 30 65 55 90 85 95  15 25 40 75 30 55 65 90 85 95  40 25 75 15 30 65 55 90 85 95  25 40 15 30 75 65 55 85 90 95 Câu 6: Cho dãy số sau: 40 25 75 15 65 55 9 0 30 95 85. Áp dụng phương pháp sắp xếp nổi bọt, sau lượt 2 dãy sẽ được sắp xếp lại lại như thế nào?  *15 25 40 30 75 55 65 85 90 95  25 15 40 30 75 55 65 85 90 95  40 25 15 75 30 65 55 95 85 90  15 25 40 75 30 55 65 90 85 95 Câu 7: Cho dãy số sau: 40 25 75 15 65 55 90 30 95 85. Áp dụng phương pháp sắp xếp nổi bọt, sau lượt 3 dãy sẽ được sắp xếp lại như thế nào?  40 25 55 15 30 65 75 90 85 95  *15 25 30 40 55 75 65 85 90 95  25 40 30 15 55 65 75 85 90 95  15 25 40 75 30 55 65 90 85 95 Câu 8: Cho dãy số sau: 40 25 75 15 65 55 90 30 95 85. Áp dụng phương pháp sắp xếp nổi bọt, sau lượt 4 dãy sẽ được sắp xếp lại như thế nào?  40 25 55 15 30 65 75 90 85 95  *15 25 30 40 55 65 75 85 90 95  15 25 40 75 30 55 65 90 85 95  15 40 30 25 55 65 75 85 90 95 Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 22. Câu 9: Cho dãy số sau: 40 25 75 15 65 55 90 30 95 85. Áp dụng phương pháp sắp xếp nhanh (Quick_Sort), sau lượt 1 dãy sẽ được sắp xếp lại như thế nào?  15 25 40 75 30 55 65 90 85 95  15 40 30 25 55 65 75 85 90 95  40 25 55 15 30 65 75 90 85 95  * (15 25 30) 40 (65 55 90 75 95 85) Câu 10: Cho dãy số sau: 40 25 75 15 65 55 90 30 95 85. Áp dụng phương pháp sắp xếp nhanh (Quick_Sort), sau lượt 2 dãy sẽ được sắp xếp lại như thế nào?  15 40 30 25 55 65 75 85 90 95  *1 5 (25 30) 40 (65 55 90 75 95 85)  40 25 55 15 30 65 75 90 85 95  15 25 40 75 30 55 65 90 85 95 Câu 11: Cho dãy số sau: 40 25 75 15 65 55 90 30 95 85.Áp dụng phương pháp sắp xếp nhanh (Quick_Sort), sau lượt 3 dãy sẽ được sắp xếp lại như thế nào?  15 40 30 25 55 65 75 85 90 95  15 25 40 75 30 55 65 90 85 95  40 25 55 15 30 65 75 90 85 95  *15 25 (30) 40 (65 55 90 75 95 85) Câu 12: Cho dãy số sau: 40 25 75 15 65 55 90 30 95 85. Áp dụng phương pháp sắp xếp nhanh (Quick_Sort), sau lượt 4 dãy sẽ được sắp xếp lại như thế nào?  40 25 55 15 30 65 75 90 85 95  15 40 30 25 55 65 75 85 90 95  *15 25 30 40 (65 55 90 75 95 85)  15 25 40 75 30 55 65 90 85 95 Câu 13: Cho dãy số sau: 40 25 75 15 65 55 90 30 95 85. Áp dụng phương pháp sắp xếp nhanh (Quick_Sort), sau lượt 5 dãy sẽ được sắp xếp lại như thế nào?  *1 5 25 30 40 (55) 65 (90 75 95 85)  15 25 40 75 30 55 65 90 85 95  15 40 30 25 55 65 75 85 90 95  40 25 55 15 30 65 75 90 85 95 Câu 14: Cho dãy số sau: 40 25 75 15 65 55 90 30 95 85. Áp dụng phương pháp sắp xếp nhanh (Quick_Sort), sau lượt 6 dãy sẽ được sắp xếp lại như thế nào?  15 25 40 75 30 55 65 90 85 95  *1 5 25 30 40 55 65 (90 75 95 85)  40 25 55 15 30 65 75 90 85 95  15 40 30 25 55 65 75 85 90 95 Câu 15: Cho dãy số sau: 40 25 75 15 65 55 90 30 95 85. Áp dụng phương pháp sắp xếp nhanh (Quick_Sort), sau lượt 7 dãy sẽ được sắp xếp lại như thế nào?  40 25 55 15 30 65 75 90 85 95  *1 5 25 30 40 55 65 (85 75) 90 (95)  15 40 30 25 55 65 75 85 90 95  15 25 40 75 30 55 65 90 85 95 Câu 16: Cho dãy số sau: 40 25 75 15 65 55 90 30 95 85. Áp dụng phương pháp sắp xếp nhanh (Quick_Sort), sau lượt 8 dãy sẽ được sắp xếp lại như thế nào?  15 25 40 75 30 55 65 90 85 95  *1 5 25 30 40 55 65 (75) 85 90 (95)  40 25 55 15 30 65 75 90 85 95 Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 23.  15 40 30 25 55 65 75 85 90 95 Câu 17: Cho dãy số sau: 40 25 75 15 65 55 90 30 95 85. Áp dụng phương pháp sắp xếp nhanh (Quick_Sort), sau lượt 9 dãy sẽ được sắp xếp lại như thế nào?  40 25 55 15 30 65 75 90 85 95  *1 5 25 30 40 55 65 7 5 85 90 (95)  15 25 40 75 30 55 65 90 85 95  15 40 30 25 55 65 75 85 90 95 Câu 18: Cho dãy số sau: 40 25 75 15 65 55 90 30 95 85. Áp dụng phương pháp sắp xếp hòa nhập (Merge_Sort) trực tiếp, sau lượt 1 dãy sẽ được sắp xếp lại như thế nào?  [15 40] [30 25] [55 65] [75 85] [90 95]  [40 25] [55 15] [30 65] [75 90] [85 95]  [15 25] [40 75] [30 55] [65 90] [85 95]  * [25 40] [15 75] [55 65] [30 90] [85 95] Câu 19: Cho dãy số sau: 40 25 75 15 65 55 90 30 95 85. Áp dụng phương pháp sắp xếp hòa nhập (Merge_Sort), sau lượt 2 dãy sẽ được sắp xếp lại như thế nào?  * [15 25 40 75] [30 55 65 90] [85 95]  [15 40 30 25] [55 65 75 85] [90 95]  [40 25 55 15] [30 65 75 90] [85 95]  [15 25 75 40] [30 65 55 90] [85 95] Câu 20: Cho dãy số sau: 40 25 75 15 65 55 90 30 95 85. Áp dụng phương pháp sắp xếp hòa nhập (Merge_Sort), sau lượt 3 dãy sẽ được sắp xếp lại như thế nào?  [15 25 75 40] [30 65 55 90 85 95]  [40 25 55 15] [30 65 75 85 90 95]  * [15 25 30 40 55 65 75 90] [85 95]  [15 40 30 25 55 65 75 85] [90 95] Câu 21: Cho dãy số sau: 40 25 75 15 65 55 90 30 95 85. Áp dụng phương pháp sắp xếp hòa nhập (Merge_Sort), sau lượt 4 dãy sẽ được sắp xếp lại như thế nào?  [15 40 30 25 55 65 75 85 90 95]  * [15 25 30 40 55 65 75 85 90 95]  [15 25 75 40 30 65 55 90 85 95]  [40 25 55 15 30 65 75 85 90 95] Câu 22: Cho dãy số sau: 14 32 10 43 57 87 55 36 97 11. Áp dụng phương pháp tìm kiếm tuần tự, sau bao nhiều lần thực hiện phép so sánh ta sẽ tìm thấy số 43?  2 lần  5 lần  3 lần  *4 lần Câu 23: Cho dãy số sau: 10 11 14 32 36 43 55 57 87 97 . Áp dụng phương pháp tìm kiếm nhị phân, sau bao nhiêu lần phân đoạn ta sẽ tìm thấy số 43?  4 lần  2 lần  *3 lần  5 lần Câu 24: Cho dãy số sau: 10 11 14 32 36 43 55 57 87 97. Áp dụng phương pháp tìm kiếm nhị phân, để tìm kiếm số 10, lần phân đoạn thứ nhất của dãy sẽ là:  [14 32 10 43 57]  [87 55 36 97 11] Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 24.  [55 36 97 11]  * [10 11 14 32 36] Câu 25: Cho dãy số sau: 10 11 14 32 36 43 55 57 87 97. Áp dụng phương pháp tìm kiếm nhị phân, để tìm kiếm số 97, lần phân đoạn thứ hai của dãy sẽ là:  [36 97 11]  [36 11]  [36 97]  * [87 97] Câu 26: Tính chất nào sau đây là tính chất của cây nhị phân tìm kiếm:  Đáp án A và C  *Mọi khóa thuộc cây con trái nút đó đều nhỏ hơn khóa ứng với nút đó  Mọi khóa thuộc cây con trái nút đó đều lớn hơn khóa cây con phải nút đó  Mọi khóa thuộc cây con trái nút đó đều lớn hơn khóa ứng với nút đó Câu 27: Tính chất nào sau đây là tính chất của cây nhị phân tìm kiếm?  Mọi khoá thuộc cây con phải nút đó đều nhỏ hơn khoá ứng với nút đó  Đáp án A và C  Mọi khóa thuộc cây con phải nút đó đều nhỏ hơn khóa cây con trái nút đó  *Mọi khóa thuộc cây con phải nút đó đều lớn hơn khóa ứng với nút đó Câu 28: Giải thuật sau là phương pháp tìm kiếm nào? Function F(x) Begin i:=1; a[n+1]:=x; while a[i] <> x do i:=i+1; if i=n+1 then return(0) else return(i); End;  Không là phương pháp tìm kiếm nào  *Tìm kiếm tuần tự  Tìm kiếm nhị phân  Tìm kiếm trên cây nhị phân tìm kiếm Câu 29: Giải thuật sau là phương pháp tìm kiếm nào? Function Binary_search(l,r,x) Begin If l>r then k:=0 Else m:= (l+r) div 2 If x< a[m] then K:=binary_search(l, m, x) Else If x>a[m] then K:=binary_search(m+1,r,x) Else k:=m; Return(m); End;  Tìm kiếm tuần tự  Tìm kiếm trên cây nhị phân tìm kiếm  Không là phương pháp tìm kiếm nào  *Tìm kiếm nhị phân Phần 4: Câu 1: Các thuộc tính của một kiểu dữ liệu  Tên kiểu dữ liệu  Kích thước lưu trữ Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 25.  Miền giá trị  Tập các toán tử tác động lên kiểu dữ liệu  *Tất cả các thuộc tính đưa ra Câu 2: Miền giá trị của Kiểu số nguyên là:  *-32768 .. 32767  -32767 .. 32768  0..32767  0..32768 Câu 3: Kích thước lưu trữ kiểu số nguyên là  4 byte  6 byte  *2 byte  1 byte Câu 4: Tập các toán tử kiểu số nguyên là  +, -, , /, %, các phép so sánh, div ,mod  *+, -, , /, %, các phép so sánh  +, -, , /, % ,true,false  +, -, , /, % Câu 5: Tên kiểu nguyên là:  *Integer  Boolean  Byte  Real Câu 6: Khi khai báo type T = min..max Trong đó min và max là cận dưới và cận trên của khoảng T là kiểu gì?  Kiểu integer  Kiểu liệt kê  *Kiểu đoạn con  Không có kiểu này Câu 8: Đâu là kiểu dữ liệu có cấu trúc  Kiểu array (mảng)  Kiểu record (bản ghi)  *Tất cả các kiểu đưa ra  Kiểu con trỏ Câu 9: Chọn câu trả lời đúng nhất về thuật toán  Thuật toán 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.  Thuật toán là nòng cốt của chương trình  *Thuật toán là một dãy hữu hạn các bước, mỗi bước mô tả chính xác các phép toán hoặc hành động cần thực hiện để giải quyết vấn đề đặt ra  thuật toán cần có một hoặc nhiều dữ liệu ra (output) ,dữ liệu vào (input). Câu 10: .Đặc trưng của thuật toán  *Tất cả ý nêu ra  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  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 Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 26.  Mỗi thuật toán có bộ dữ liệu vào ,ra tương ứng  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 Câu 11: Đặc trưng nào của thuật toán thể hiện: 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  Tính dừng  Tính xác định  *Tính khả thi Câu 12: Để viết chương trình chỉ để sử dụng một số ít lần và cái giá của thời gian viết chương trình vượt xa cái giá của chạy chương trình thì ta chọn thuật toán:  Thuật toán sử dụng tiếp kiện nhất nguồn tài nguyên của máy tính, và đặc biệt, chạy nhanh nhất có thể được.  *Thuật toán đơn giản, dễ hiểu, dễ cài đặt (dễ viết chương trình)  Cả hai tiêu chí nêu ra Câu 13: Khi viết các chương trình (thủ tục hoặc hàm ) để sử dụng nhiều lần, cho nhiều người sử dụng ta chọn thuật toán:  Cả hai tiêu chí nêu ra  Thuật toán đơn giản, dễ hiểu, dễ cài đặt (dễ viết chương trình)  *Thuật toán sử dụng tiếp kiện nhất nguồn tài nguyên của máy tính, và đặc biệt, chạy nhanh nhất có thể được. Câu 14: 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 Chú ý: (log2n) = Log cơ số 2 của n  O(nlog2n),O(n),O(log2n),O(1)  O(1),O(nlog2n),O(n),O(log2n)  O(log2n),O(n),O(nlog2n),O(1)  *O(1),O(log2n),O(n),O(nlog2n) Câu 15: Qui tắc tổng Xác định độ phức tạp tính toán 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)) thì thời gian thực hiện đoạn P1 rồi P2 tiếp theo sẽ là  T1(n) + T2(n: O(Min(f(n),g(n))).  *T1(n) + T2(n: O(max(f(n),g(n))).  T1(n) + T2(n: O((f(n)+g(n))).  T1(n) + T2(n: O((f(n) or g(n))). Câu 16: Trong một chương trình có 3 bước thực hiện mà thời gian thực hiện tưng bước lần lượt là O(n2), O(n3) và O(nlog2n). thời gian thực hiện chương trình sẽ là Chú ý: (log2n) = Log cơ số 2 của n; n^2 = n mũ 2  *O(n^3)  O(n^2)  O(nlog2n)  O(n^2)+ O(n^3) + O(nlog2n) Câu 17: Xác định độ phức tạp tính toán 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à  T1(n)T2(n: O(f(n)/g(n))  *T1(n)T2(n: O(f(n)g(n))  T1(n)T2(n: O(f(n)and g(n))  T1(n)T2(n: O(f(n)+g(n)) Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 27. Câu 18: Thời gian thực hiện các lệnh đơn : gán, đọc, viết là Chú ý: (log2n) = Log cơ số 2 của n; n^2 = n mũ 2  O(2)  O(log2(n))  *O(1)  O(n Câu 19: thời gian thực hiện lệnh hợp thành(Begin.. end) được xác định bởi Chú ý: (log2n) = Log cơ số 2 của n; n^2 = n mũ 2  O(log2(n)  Quy tắc nhân  *quy tắc tổng  Hằng số Câu 20: Nếu S1 và S2 là các câu lệnh và E là biểu thức logic thì If E Then S1 Else S2 Giả sử thời gian thực hiện các lệnh S1, S2 là O(f(n)) và O(g(n)) tương ứng. Khi đó thời gian thực hiện lệnh if là  O(Min (f()n), g(n)))  *O(max (f()n), g(n)))  O(or( (f()n), g(n)))  O(And (f()n), g(n))) Câu 21:  O(And (f()n), g(n)))  *O(f(n)g(n)).  O(max (f()n), g(n))) Câu 22:  O(n)  O(1)  2log2n + 1  *O(log2n) Câu 23:  O(2)  O(n)  *O(1)  O(m) Câu 24:  O(2)  O(m)  *O(1)  O(n) Câu 25: Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 28.  O(n)  O(m)  *O(1)  O(n^2) Câu 26:  O(log2n + 1)  O(n)  O(n^2)  *O(log2n) Câu 27:  *O(n^2)  O(n!)  O(n)  O(log2(n) Câu 28:  O(n^2)  O(1)  *O(N)  O(n^3) Câu 29:  O(n^2)  O(1)  *O(N)  O(log2(n)) Câu 30:  O(n^2)  *O(n^3)  O(n)  O(nlog2(n) Câu 31: GiảI thuật đệ quy la:  Nếu lời giải của của một bài toán T được giải bằng lời giải của một bài toán T1 khác T , thì lời giải đó được gọi là lời giải đệ quy  Nếu lời giải của của một bài toán T được giải bằng lời giải của một bài toán T1 mà T1 giảI được thì lời giải đó được gọi là lời giải đệ quy  *Nếu lời giải của của một bài toán T được giải bằng lời giải của một bài toán T1, có dạng giống như T, thì lời giải đó được gọi là lời giải đệ quy Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 29.  Nếu lời giải của của một bài toán T được giải bằng lời giải của một bài toán T1 mà T1 có độ phức tạp khác T , thì lời giải đó được gọi là lời giải đệ quy Câu 32:  sau một vàI lần tách đôI từ điển  Khi xác định từ cần tìm nằm ở nửa sau của từ đIún  Khi xác định từ cần tìm nằm ở nửa trước của từ đIển  *sau nhiều lần tách đôi từ điển chỉ còn một trang Câu 33: Một giảI thuật đệ quy xảy ra trường hợp suy biến khi nào  Khi không thể giảI quyết được giảI thuật.  *Sau một số lần có lời gọi đệ quy bài toán còn lại sẽ được giải quyết theo một cách khác  Khi kết quả của giảI thuật bằng giá trị 0  Sau một số lần có lời gọi đệ quy. Câu 34: .Đặc đIúm nào của giảI thuật viết bằng đệ quy là sai trong các đặc đIúm sau  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.  Tất cả đều sai  Trong thủ tục đệ quy có lời gọi đến chính thủ tục đó  *sau một số lần gọi đệ quy bàI toán có giá trị bằng 0 Câu 35:  Tăng lên 1  N=1  *Giảm đI 1  N=0 Câu 36:  Factorial(n: 0  *Factorial(0) = 1  Factorial(n-1)  Factorial(n-1) =1 Câu 37:  *6  8  9  2 Câu 38 :  9 cặp  *5 cặp  12 cặp  10 cặp Câu 39: Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 30.  F(1) = 1 và F(2) = 1  F(1) = 0 và F(2) = 1  F(2) = 1  *F(1) = 1 Câu 40:  8  *3  11  10 Câu 41: Đặc điểm của giảI thuật đệ quy  *Tất cả đều đúng  Trong thủ tục đệ quy có lời gọi đến chính thủ tục đó  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 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 Câu 42:  14 bước  8 bước  *15 bước  16 bứơc Câu 43:  N=0  N=3  *N=1  N=2 Câu 44: Một giá trị kiểu char chiếm bao nhiêu bộ nhớ  *1byte  4byte  3byte  2byte Câu 45: Danh sách tuyến tính là:  danh sách tuyến tính là một danh sách có dạng (a1, a2, ..., an)  *danh sách mà quan hệ lân cận giữa các phần tử được hiển thị ra thì được là danh sách tuyến tính.  danh sách tuyến tính là một danh sách rỗng Câu 46: ưu đIểm của việc càI đặt danh sách bằng mảng  *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ử.  Khi khai báo một mảng ta phải xác định số lượng phần tử của mảng,nên khống chế số luợng của đối tuợng mà danh sách lưu trữ. Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 31.  Tất cả đều đúng Câu 47: Danh sách tuyến tính dạng ngăn xếp là:  *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 .  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  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. Câu 48: Danh sách tuyến tính dạng ngăn xếp làm việc theo nguyên tắc  *FILO(first in last out)  FIFO( first in first out)  FOLO( fisrt out last out)  LILO(last in last out) Câu 49:  Khai báo hàng đợi  Khai báo mảng  *Khai báo ngăn xếp  Khai báo con trỏ bản ghi Câu 50:  Dòng 6  Dòng 5  Dòng 1  *Dòng 4, dòng 5 Câu 51:  Khởi tạo stack có giá trị bằng 0  *Khởi tạo stack rỗng  Thêm phần tử vào danh sách  Kiểm tra stack có phần tử bằng 0 hay không? Câu 52:  Khởi tạo stack có giá trị bằng 0  Khởi tạo stack rỗng  *Kiểm tra ngăn xếp rỗng.  Kiểm tra ngăn xếp đầy. Câu 53:  *Kiểm tra ngăn xếp đầy.  Kiểm tra ngăn xếp rỗng.  Kiểm tra ngăn xếp có giá trị nào lớn nhất  Tìm phần tử lớn nhất của ngăn xếp Câu 54: Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 32.  *True  1  0  False Câu 55:  0  *True  1  False Câu 56:  *Thêm một phần tử mới vào đỉnh ngăn xếp  Kiểm tra ngăn xếp có đầy không  Loại bỏ phần tử ở đỉnh của ngăn xếp  Xử lý với nhiều ngăn xếp. Câu 57:  Xử lý với nhiều ngăn xếp.  *Loại bỏ phần tử ở đỉnh của ngăn xếp  Thêm một phần tử mới vào đỉnh ngăn xếp  Kiểm tra ngăn xếp có rỗng không Câu 58: 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  *Ngăn xếp (stack)  Hàng đợi(Queue)  Bản gCâu Record)  Mảng (array) Câu 59:  *ứng dụng ngăn xếp để đổi số N từ cơ số 10 sang cơ số 2  ứng dụng ngăn xếp để thay N bằng thương của phép chia N cho 2  ứng dụng ngăn xếp để Đưa giá trị N vào ngăn xếp và lấy ra giá trị N  ứng dụng ngăn xếp để tính số dư trong phép chia N cho 2 Câu 60:  dòng 3  dòng 1  *dòng 4  dòng 2 Câu 61: Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 33.  *1 5 + 8 4 1 - -  1 5 8 4 1- -+  1 5 + 8 4 1 - -  1 5 8 4 1+ - - Câu 62: định nghĩa danh sách tuyến tính Hàng đợi (Queue)  Hàng đợi là kiểu danh sách tuyến tính trong đó, phép bổ sung một phần tử vào hàng đợiđượ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.  Hàng đợi là kiểu danh sách tuyến tính trong đó, phép bổ sung một phần tử vào hàng đợi hay loại bỏ được thực hiện ở một đầu danh sách gọi là đỉnh (Top)  *Hàng đợi là kiểu danh sách tuyến tính trong đó, phép bổ sung một phần tử vào hàng đợi được thực hiện ở một đầu, gọi là lối sau (rear) và phép loại bỏ một phần tử được thực hiện ở đầu kia, gọi là lối trước (front). Câu 63: hàng đợi còn được gọi là danh sách kiểu  LIFO  FILO  LOLO  *FIFO Câu 64:  *Hàng đợi (queue)  Con trỏ (pointer)  Ngăn xếp (stack)  Mảng (array) Câu 65:  Kiểm tra hàng đợi có rỗng hay không  *Khởi tạo một hàng đợi rỗng  Loại bỏ một phần tử ra khỏi hàng đợi  Thêm một phần tử vào hàng đợi Câu 66:  *Kiểm tra hàng đợi đầy.  Khởi tạo một hàng đợi rỗng  Thêm một phần tử vào hàng đợi  Kiểm tra hàng đợi có rỗng hay không  Loại bỏ một phần tử ra khỏi hàng đợi Câu 67:  Khởi tạo một hàng đợi rỗng  Loại bỏ một phần tử ra khỏi hàng đợi  Thêm một phần tử vào hàng đợi  *Kiểm tra hàng đợi có rỗng hay không Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 34.  Kiểm tra hàng đợi đầy. Câu 68:  Kiểm tra hàng đợi có rỗng hay không  Kiểm tra hàng đợi đầy.  Khởi tạo một hàng đợi rỗng  *Thêm một phần tử vào hàng đợi Câu 69:  Thêm một phần tử vào hàng đợi  Kiểm tra hàng đợi có rỗng hay không  *Loại bỏ một phần tử ra khỏi hàng đợi  Khởi tạo một hàng đợi rỗng  Kiểm tra hàng đợi đầy. Câu 70: Khi loại bỏ một phần tử ra khỏi hàng đợi Thì:  Cần khởi tạo lại hàng đợi  Nếu hàng đợi chỉ có một phần tử thì không thể thực hiện việc loại bỏ  *Nếu hàng đợi rỗng thì không thể thực hiện việc loại bỏ  Nếu hàng đợi đầy thì không thể thực hiện việc loại bỏ Câu 71: Khi bổ sung một phần tử mới vào hàng đợi cần kiểm tra  Hàng đợi có bao nhiêu phần tử  Hàng đợi có bao nhiêu giá trị bằng 0  Hàng đợi có rỗng không  *Hàng đợi có đầy không Câu 72:  40  *43  41  42 Câu 73: ý tưởng phương pháp sắp xếp nổi bọt (bubble sort) là:  Chọn phần tử bé nhất xếp vào vị trí thứ nhất,tương tự đối với phần tử nhỏ thứ hai,ba...  Lần lượt lấy phần tử của danh sách chèn vị trí thích hợp của danh sách đã sắp  Dựa vào tư tưởng "chia để trị  *so sánh hai phần tử kề nhau nếu chưa đúng thì đổi chỗ Câu 74: ý tưởng phương pháp sắp xếp chèn(insertion sort)  *Lần lượt lấy phần tử của danh sách chèn vị trí thích hợp của danh sách đã sắp  so sánh hai phần tử kề nhau nếu chưa đúng thì đổi chỗ  Dựa vào tư tưởng "chia để trị  Chọn phần tử bé nhất xếp vào vị trí thứ nhất,tương tự đối với phần tử nhỏ thứ hai,ba... Câu 75: ý tưởng phương pháp sắp xếp chọn (select sort)  Lần lượt lấy phần tử của danh sách chèn vị trí thích hợp của danh sách đã sắp  *Chọn phần tử bé nhất xếp vào vị trí thứ nhất,tương tự đối với phần tử nhỏ thứ hai,ba...  so sánh hai phần tử kề nhau nếu chưa đúng thì đổi chỗ Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 35.  Dựa vào tư tưởng "chia để trị". Câu 76:  *Sắp xếp chọn(selection sort)  Sắp xếp nổi bọt(bubble sort)  Sắp xếp nhanh(quick sort)  Sắp xếp chèn(insertion sorr) Câu 77:  Sắp xếp chọn(selection sort)  *Sắp xếp nổi bọt(bubble sort)  Sắp xếp chèn(insertion sorr)  Sắp xếp nhanh(quick sort) Câu 78:  Sắp xếp chèn(insertion sort)  Sắp xếp chọn(selection sort)  Sắp xếp nhanh(quick sort)  *Sắp xếp nổi bọt(bubble sort) Câu 79: Tư tưởng của giải thuật tìm kiếm nhị phân:  *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 quuyế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  Dựa vào Tư tưởng "chia để trị  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 Câu 80: Tư tưởng của giải thuật tìm kiếm tuần tự  Dựa vào Tư tưởng "chia để trị".  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 quuyế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  *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 Phần 5: Câu 1: Có khai báo dạng: Type Tên kiểu = ^ Kiểu dữ liệu; Var Tên biến : Tên kiểu; Khai báo trên thuộc cấu trúc dạng  bản ghi  *Con trỏ  mảng Câu 2: Ta xét một khai báo có dạng Type P = ^T; P có nghiã là gì:  là kiểu dữ liệu mà con trỏ trỏ tới. Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 36.  Chỉ địa chỉ của giá trị mà nó đang trỏ tới.  Cho kết quả là giá trị kiểu T mà nó đang trỏ tới.  *là biến kiểu con trỏ. Câu 3: Ta xét một khai báo có dạng Type P = ^T; T có nghĩa là gì?  Chỉ địa chỉ của giá trị mà nó đang trỏ tới  là biến kiểu con trỏ.  Cho kết quả là giá trị kiểu T mà nó đang trỏ tới.  *là kiểu dữ liệu mà con trỏ trỏ tới. Câu 4: Ta xét một khai báo có dạng Type P = ^T; P^ có nghĩa là gì?  *Cho kết quả là giá trị kiểu T mà nó đang trỏ tới.  Chỉ địa chỉ của giá trị mà nó đang trỏ tới  là biến kiểu con trỏ.  là kiểu dữ liệu mà con trỏ trỏ tới. Câu 5: Đối với biến con trỏ Hàm New(p) có nghĩa là gì  Thu hồi vùng nhớ đã cấp phát  gán giá trị của địa chỉ của vùng Heap cho một con trỏ p nào đó.  *cấp phát vùng nhớ động do con trỏ p quản lý  hủy bỏ vùng nhớ do p trỏ tới (quản lý). Câu 6: Đối với dữ liệu kiểu con trỏ Thủ tục GetMem (p, k) để làm gì?  *Thủ tục này sẽ cấp phát k bytes vùng nhớ do con trỏ p quản lý.  cho biết tổng số bytes còn lại trên Heap.  gán giá trị của địa chỉ của vùng Heap cho một con trỏ p nào đó  Thủ tục này sẽ thu hồi vùng nhớ đã được cấp phát . Câu 7: Định nghĩa cấu trúc dữ liệu dạng Danh sách(LIST)  Danh sách là kiểu dữ liệu mảng  danh sách là Tập hợp các phần tử khác kiểu  Danh sách là kiểu con trỏ  *danh sách là một tập hợp các phần tử có cùng một kiểu mà ta gọi là kiểu phần tử (ElementType). Câu 8: Trong các cấu trúc dữ liệu sau đâu là dữ liệu trừu tượng  Cấu trúc dữ liệu dạng StacK  Cấu trúc dữ liệu dạng danh sách(LIST)  *Tất cả cấu trúc đã nêu  Cấu trúc dữ liệu kiểu hàng đợi(QUEUE) Câu 9: Tính chất quan trọng của danh sách:  Các phần tử của danh sách có thể truy nhập ngẫu nhiên.  *Các phần tử của danh sách có thứ tự tuyến tính theo vị trí xuất hiện của chúng(position)  Tất cả đều sai  Các phần tử của danh sách không theo thứ tự Câu 10: Có thể cài đặt danh sách bằng:  Con trỏ  *Mảng và con trỏ. Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 37.  Mảng  tất cả đều sai Câu 11: Cài đặt danh sách bằng mảng có nghiã là  Dùng biến con trỏ lưu trữ các phần tử của danh sách.  *dùng một mảng (array) để lưu trữ liên tiếp các phần tử của danh sách bắt đầu từ vị trí đầu tiên của mảng.  Tất cả đều đúng.  Dùng bản ghi có hai thành phần để lưu trữ các phần tử của danh sách Câu 12:  Đây là khai báo bản ghi.  Đây là khai báo cấu trúc dữ liệu Stack bằng mảng  *Đây là khai báo cấu trúc dữ liệu Danh sách bằng mảng  Đây là khai báo cấu trúc dữ liệu Danh sách bằng con trỏ Câu 13: Thủ tục này làm nhiệm vụ gì(danh sách cài đặt bằng mảng)? Procedure MlList ( Var L : List); begin L.Last : = 0; End;  Thủ tục kiểm tra danh sách rỗng  *Thủ tục khởi tạo danh sách rỗng  Thủ tục chèn thêm một giá trị bằng 0 vào danh sách  Tất cả đều sai Câu 14: Danh sách cài đặt bằng mảng Hàm sau có chức năng gì? Function EtyList ( L : List ) : Boolean; begin EtyList : = ( L.Last = 0 ); End;  Kiểm tra giá trị cuối có bằng không hay không?.  Khởi tạo danh sách rỗng  *Kiểm tra danh sách rỗng  Kiểm tra danh sách đầy Câu 15: Trong khi sử dụng cấu trúc dữ liệu dạng danh sách Hàm sau có chức năng gì? Function FList ( L : List ) : Boolean; begin FList : = ( L.Last > = Maxlenght ); End;  tất cả đều sai  Kiểm tra danh sách rỗng  Khởi tạo danh sách có giá trị cuối bằng không.  *Kiểm tra danh sách đầy Câu 16:  Thủ tục khởi tạo danh sách rỗng Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 38.  *Thủ tục nhập giá trị cho các phần tử của danh sách  Thủ tục xoá phần tử của danh sách  Thủ tục xen một phần tử vào danh sách Câu 17: Khi chèn một phần tử vào danh sách xảy ra tình trạng: độ dài của danh sách = độ dài của mảng thì thông báo là:  Danh sách chưa khai báo  Danh sách không tồn tại  *Danh sách đầy  Danh sách rỗng Câu 18: Khi chèn một phần tử vào danh sách (cài đặt bằng mảng) yêu cầu cần  độ dài của danh sách có thể tuỳ ý.  Độ dài danh sách > độ dài của mảng  độ dài của danh sách = độ dài của mảng  *Độ dài của danh sách < độ dài của mảng Câu 19:  khởi tạo danh sách rỗng  Xoá một giá trị của danh sách.  *Chèn một giá trị vào danh sách Câu 20: Cài đặt danh sách bằng con trỏ có nghĩa là:  Dùng một mảng (array) để lưu trữ liên tiếp các phần tử của danh sách bắt đầu từ vị trí đầu tiên của mảng. Khai báo bản ghi gồm 2 trường:Trường Elements để giữ nội dung của phần tử trong danh sách. Trường Next là một con trỏ giữ địa chỉ của ô kế tiếp.  Dùng con trỏ quản lí các phần tử của mảng theo phương thức bất kì. Để một phần tử có thể chỉ đến một phần tử khác ta xem mỗi ô là một Record gồm có 2 trường : Trường Elements để giữ nội dung của phần tử trong danh sách. Trường Next là một con trỏ giữ địa chỉ của ô kế tiếp.  *Dùng con trỏ để liên kết các phần tử của danh sách theo phương thức ai chỉ đến ai+1. Để một phần tử có thể chỉ đến một phần tử khác ta xem mỗi ô là một Record gồm có 2 tr-ờng : Trường Elements để giữ nội dung của phần tử trong danh sách. Trường Next là một con trỏ giữ địa chỉ của ô kế tiếp. Câu 21:  *Khai báo danh sách bằng con trỏ  Là khai báo danh sách bằng mảng  Khai báo danh sách bằng bản ghi có hai trường.  Tất cả đều sai Câu 22:  Thủ tục tạo mới danh sách  *Thủ tục khởi tạo danh sách rỗng  Thủ tục đưa con trỏ vào biến Nil Câu 23:  *Kiểm tra danh sách rỗng Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 39.  Khởi tạo danh sách rỗng  Đưa con trỏ về cuối danh sách.  Tạo mới một danh sách Câu 24: Danh sách khai báo bằng con trỏ. Hình ảnh sau mô tả cho thủ tục gì?  xoá một phần tử của danh sách  *xen một phần tử x vào danh sách  Tìm kiếm một phần tử của danh sách. Câu 25: Danh sách khai báo bằng con trỏ. Hình ảnh sau mô tả cho thủ tục gì?  Tìm kiếm một phần tử của danh sách.  xen một phần tử x vào danh sách  *xoá một phần tử của danh sách Câu 26: Định nghĩa cấu trúc dữ liệu Stack:  *Stack là một danh sách đặc biệt mà phép thêm vào hoặc loại bỏ một phần tử chỉ thực hiện tại một đầu gọi là đỉnh (Top) của Stack.  Stack là một danh sách đặc biệt mà phép thêm vào được thực hiện ở một đầu ,Và phép loại bỏ được thực hiện ở phần kia của stack.  Stack là danh sách kết nối.  Stack là cấu trúc dữ liệu được cài đặt bằng con trỏ. Câu 27: Một tích chất của cấu trúc dữ liệu Stack là:  FiFO(Fist in Fist Out): vào truớc ra trước  *FILO ( First In Last Out): vào trước ra sau  LILO (Lats in Last out): vào sau ra sau Câu 28: Để cài đặt Stack ta có thể dùng phương pháp nào sau đây:  *Bằng con trỏ và bằng mảng  Bằng con trỏ  Tất cả đều sai  Bằng mảng Câu 29:  Thủ tụcTạo mới một StacK  Thủ tục cập nhật giá trị vào stack  Thủ tục chèn một giá trị vào stack.  *Thủ tục khởi tạo Stack rỗng Câu 30:  *Thủ tục xoá một giá trị của stack  Thủ tục tạo một stack rỗng  Thủ tục tạo mới một stack  Thủ tục thêm một giá trị vào stack Câu 31:  Thủ tục tạo một stack rỗng  *Thủ tục thêm một giá trị vào stack  Thủ tục tạo mới một stack  Thủ tục xoá một giá trị của stack Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 40. Câu 32:  Thủ tục chèn một giá trị vào stack.  Thủ tụcTạo mới một StacK  *Thủ tục khởi tạo Stack rỗng  Thủ tục cập nhật giá trị vào stack Câu 33: Định nghĩa cẩu trúc dữ liệu hàng đợi (QUEUE)  Hàng là một danh sách đặc biệt mà phép thêm vào hay loại bỏ đều thực hịên cuối hàng (Rear).  *Hàng là một danh sách đặc biệt mà phép thêm vào chỉ thực hiện ở một đầu của danh sách gọi là cuối hàng (Rear). Phép loại bỏ lại được thực hiện ở một đầu kia của danh sách gọi là đầu hàng (Front).  Hàng là một danh sách đặc biệt mà phép thêm vào hay loại bỏ đều thực hiện ở một đầu danh sách gọI là (Rear) hoặc (Front)  Hàng là một danh sách đặc biệt mà phép thêm vào thực hiện ở một đầu của danh sách gọi là cuối hàng (Rear) hoặc đầu hàng (Front). Phép loại bỏ lại được thực hiện ở một đầu kia của danh sách gọi là đầu hàng (Front) hoặc cuối hàng (Rear). Câu 34: Tính chất của hàng đợi  Vào sau - ra trước" - LIFO : Last In Fist Out.  Vào trước - ra sau" - FILO : First In last Out.  *"Vào trước - ra trước" - FIFO : First In First Out. Câu 35:  Hàm kiểm tra Queue rỗng  Kiểm tra Queue đầy :  Thủ tục xen một phần tử vào cuối hàng  *Thủ tục khởi tạo Queue rỗng Câu 36:  *Hàm Kiểm tra Queue đầy  Hàm kiểm tra Queue rỗng  Hàm kiểm tra một phần tử có trong hàng hay không? Câu 37:  Kiểm tra một phần tử có trong hàng.  Kiểm tra Hàng đầy  *Kiểm tra hàng Rỗng Câu 38: Hàng cài đặt bằng con trỏ.Hình ảnh sau minh hoạ cho thủ tục nào?  Thủ tục tìm kiếm một phần tử trong Hàng  Thủ tục xóa một phần tử đầu hàng  *Thủ tục xen một phần tử vào cuối hàng :  Thủ tục khởi tạo Queue rỗng Câu 39: Hàng cài đặt bằng con trỏ.Hình ảnh sau minh hoạ cho thủ tục nào?  *Thủ tục xóa một phần tử đầu hàng Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 41.  Thủ tục xen một phần tử vào cuối hàng  Thủ tục tìm kiếm một phần tử trong Hàng  Thủ tục khởi tạo Queue rỗng Câu 40: Đối với biến con trỏ Hàm MaxAvail : Longint : có nghĩa là gì  Hàm cho biết tổng số bytes còn lại trên Heap.  *Hàm cho biết vùng nhớ lớn nhất còn trống trong Heap.  Cho biết số bytes được cấp phát / thu hồi bởi biến.  Hàm cho biết vùng nhớ lớn nhất được cấp phát. Câu 41: Đối với biến con trỏ Hàm MemAvail : Longint : có nghĩa là gì  Hàm cho biết vùng nhớ lớn nhất được cấp phát.  Hàm cho biết tổng số bytes còn lại trên Heap.  *Cho biết số bytes được cấp phát / thu hồi bởi biến.  Hàm cho biết vùng nhớ lớn nhất còn trống trong Heap. Câu 42: Đối với biến con trỏ Hàm SizeOf (Biến ) : Longint : có nghĩa là gì  Hàm cho biết vùng nhớ lớn nhất được cấp phát  *Hàm cho biết tổng số bytes còn lại trên Heap  Hàm cho biết vùng nhớ lớn nhất còn trống trong Heap.  Cho biết số bytes được cấp phát / thu hồi bởi biến. Câu 43: Đối với biến con trỏ hàm Add (x) : Pointer có chức năng gì?  Cho biết địa chỉ seg : Ofs.  Cho biết địa chỉ segment của biến x  *Cho biết địa chỉ tổng quát của biến x.  Cho biết địa chỉ Offset của biến x. Câu 44: Đối với biến con trỏ hàm Seg (x) : Word có chức năng gì?  Cho biết địa chỉ tổng quát của biến x.  Cho biết địa chỉ Offset của biến x.  *Cho biết địa chỉ segment của biến x  Cho biết địa chỉ seg : Ofs. Câu 45: Đối với biến con trỏ hàm Ofs (x) : Word có chức năng gì?  *Cho biết địa chỉ Offset của biến x.  Cho biết địa chỉ segment của biến x  Cho biết địa chỉ tổng quát của biến x.  Cho biết địa chỉ seg : Ofs. Câu 46: Thế nào là sắp xếp trong  Sắp xếp trong là sắp xếp dữ liệu không cần đến bộ nhớ trong máy tính ,mà chỉ cần các đối tượng được lưu trũ bằng bộ nhớ ngoài.  *Sắp xếp trong là sự sắp xếp dữ liệu được tổ chức trong bộ nhớ trong cuả máy tính, ở đó ta có thể sử dụng khả năng truy nhập ngẫu nhiên của bộ nhớ  Sắp xếp trong là sự sắp xếp được sử dụng khi số lượng đối tượng được sắp xếp lớn. Cụ thể là ta sẽ sắp xếp dữ liệu được lưu trữ trong các tập tin.  Sắp xếp trong là sắp xếp không phụ thuộc vào độ dài tập tin. Mà chỉ phụ thuộc vào bộ nhớ trong của máy tính Câu 47: Thế nào là sắp xếp ngoài  *Sắp xếp ngoài là sắp xếp dữ liệu không cần đến bộ nhớ trong máy tính ,mà chỉ cần các đối tượng được lưu trữ bằng bộ nhớ ngoài.  Sắp xếp ngoài là sự sắp xếp được sử dụng khi số lượng đối tượng được sắp xếp lớn. Cụ thể là ta sẽ sắp xếp dữ liệu được lưu trữ trong các tập tin. Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 42.  Sắp xếp ngoài là sự sắp xếp dữ liệu được tổ chức trong bộ nhớ trong cuả máy tính, ở đó ta có thể sử dụng khả năng truy nhập ngẫu nhiên của bộ nhớ  Sắp xếp ngoài là sắp xếp không phụ thuộc vào độ dài tập tin. Mà chỉ phụ thuộc vào bộ nhớ trong của máy tính Câu 48: Đâu là phương pháp sắp xếp trong ,trong các phương pháp sau  *Tất cả đều sai  Phương pháp sắp xếp chọn (insertion sort)  Phương pháp nổi bọt(Bubble sort)  Phương pháp sắp xếp chèn (selection sort) Câu 49: Đâu là phương pháp sắp xếp ngoài ,trong các phương pháp sau  Phương pháp sắp xếp chọn (selection sort)  Phương pháp nổi bọt(Bubble sort)  *cả 3 phương pháp đều đúng  Phương pháp sắp xếp chèn (insertion sort) Câu 50: Bước tổng quát của Phương pháp sắp xếp kiểu lựa chọn (selection sort)  xét các phần tử từ a[n] đến a[i+1].với mỗi phần tử a[j], so sánh khoá của nó với khoá của phần tử a[j-1] đứng ngay trước nó. Nếu khoá của a[j] nhỏ hơn khoá của a[j-1] thì hoán đổi a[j] và a[j-1] cho nhau  *chọn phần tử có khoá nhỏ nhất trong n-i+1 phần tử từ a[i] đến a[n] và hoán vị nó với a[i].  xen phần tử a[i+1] vào danh sách đã có thứ tự a[1],a[2],..a[i] sao cho a[1], a[2],.. a[i+1] là một danh sách có thứ tự. Câu 51: Bước tổng quát của Phương pháp sắp xếp kiểu chèn (insertion sort)  *xen phần tử a[i+1] vào danh sách đã có thứ tự a[1],a[2],..a[i] sao cho a[1], a[2],.. a[i+1] là một danh sách có thứ tự.  chọn phần tử có khoá nhỏ nhất trong n-i+1 phần tử từ a[i] đến a[n] và hoán vị nó với a[i].  xét các phần tử từ a[n] đến a[i+1].với mỗi phần tử a[j], so sánh khoá của nó với khoá của phần tử a[j-1] đứng ngay trước nó. Nếu khoá của a[j] nhỏ hơn khoá của a[j-1] thì hoán đổi a[j] và a[j-1] cho nhau Câu 52: Bước tổng quát của Phương pháp sắp xếp kiểu nổi bọt (bubble sort)  xen phần tử a[i+1] vào danh sách đã có thứ tự a[1],a[2],..a[i] sao cho a[1], a[2],.. a[i+1] là một danh sách có thứ tự.  *xét các phần tử từ a[n] đến a[i+1].với mỗi phần tử a[j], so sánh khoá của nó với khoá của phần tử a[j-1] đứng ngay trước nó. Nếu khoá của a[j] nhỏ hơn khoá của a[j-1] thì hoán đổi a[j] và a[j-1] cho nhau  chọn phần tử có khoá nhỏ nhất trong n-i+1 phần tử từ a[i] đến a[n] và hoán vị nó với a[i]. Câu 53:  O(n mũ 2)  O(n-1)  O(n)  *Là hằng Câu 54: Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 43.  *O(n-i) thời gian  Là hằng thời gian  O(n) thời gian  O(n mũ 2) thời gian Câu 55:  *O(n mũ 2) thời gian  Là hằng thời gian  O(n) thời gian  O(n-i) thời gian Câu 56:  O(n-i)  *O(1)  O(n)  O(n^2) Câu 57:  *O(1)  O(n)  O(n mũ 2)  O(n-i) Câu 58:  *O(n mũ 2)  O(n)  O(n-1)  O(1) Câu 59: Giả sử cần Sắp xếp mảng gồm 10 mẩu tin có khóa là các số nguyên: 5, 6, 2, 2, 10, 12, 9, 10, 9 và 3 các bước trong bảng sau cho ta biết đang sử dụng phương pháp sắp xếp nào  một phương pháp khác  Phương pháp nổi bọt  Phương pháp sắp xếp chèn  *Phương pháp sắp xếp lựa chọn Câu 60: Giả sử cần Sắp xếp mảng gồm 10 mẩu tin có khóa là các số nguyên: 5, 6, 2, 2, 10, 12, 9, 10, 9 và 3 các bước trong bảng sau cho ta biết đang sử dụng phương pháp sắp xếp nào  Phương pháp sắp xếp lựa chọn  Phương pháp nổi bọt  một phương pháp khác  *Phương pháp sắp xếp chèn Câu 61: Giả sử cần Sắp xếp mảng gồm 10 mẩu tin có khóa là các số nguyên: 5, 6, 2, 2, 10, 12, 9, 10, 9 và 3 các bước trong bảng sau cho ta biết đang sử dụng phương pháp sắp xếp nào  một phương pháp khác  Phương pháp sắp xếp lựa chọn  Phương pháp sắp xếp chèn Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 44.  *Phương pháp nổi bọt Câu 62: Giải thuật là gì?  giải thuật là một cách để giải bài toán nào đó chỉ bằng ngôn ngữ.  giải thuật là một cách để giải bài toán nào đó bằng phương pháp lưu đồ  *giải thuật là một cách để giải bài toán nào đó, nhưng nó phải áp dụng được cho mọi bài toán cùng loại.  giải thuật là một cách để giải bài toán nào đó.Cũng có thể chỉ đúng cho một vài tr-ờng hợp đặc biệt . Câu 63: Thế nào là ngôn ngữ giả?  Ngôn ngữ giả là ngôn ngữ lập trình pascal, C, hay một ngôn ngữ bậc cao khác.  Ngôn ngữ giả là ngôn ngữ do ngưuoi lập trình định nghĩa.  Ngôn ngữ giả là cấu trúc của môt chuương trình chỉ viết bằng ngôn ngữ Pascal mà tuỳ thuộc vào nguười lập trình.  *Ngôn ngữ giả là sự kết hợp của ngôn ngữ tự nhiên và các cấu trúc của một ngôn ngữ lập trình nào đó. Câu 64: Hãy sắp xếp thứ tự 3 giai đoạn để giải quyết bài toán  *B,C,A  A,B,C  C,A,B  B,A,C  (A) Chọn một cách cài đặt một kiểu dữ liệu trừu tượng và thay ngôn ngữ giả bằng các mã lệnh của 1 ngôn ngữ lập trình . Kết quả là ta được 1 chương trình hoàn chỉnh có thể giải quyết được vấn đề đặt ra.  (C) Giải thuật được trình bày bằng ngôn ngữ giả dựa trên các kiểu dữ liệu trừu tượng.  (B) Xây dựng mô hình toán thích hợp cho bài toán và tìm một giải thuật giải quyết bài toán trên mô hình đó. Câu 65: Bài toán tô màu đồ thị:  *2 màu  1 màu  Tô màu cho các đỉnh của đồ thị sao cho số màu được dùng là ít nhất và 2 đỉnh kề nhau (có cung nối) không được tô cùng 1 màu. Với đồ thị sau ta có thể tô tối thiểu bao nhiêu màu:  3 màu  4 màu Câu 66: Thời gian chạy chương trình phụ thuộc vào các yếu tố nào  *Tất cả các yếu tố nêu ra  Độ phức tạp tính toán của giải thuật.  Tính chất của trình biên dich được dùng.  Tôc độ của máy được dùng.  Dữ liệu đầu vào. Câu 67: Giả sử chương trình A có thời gian chạy chương trình T1(n)=n^2(n mũ 2) Giả sử chương trình B có thời gian chay chương trình 4*n+1 với n càng lớn thì chương trình nào tốt hơn  chương trình A = chương trình B  *chương trình B tốt hơn chương trình A  chương trình A tốt hơn chương trình B Câu 68: Nếu T1(n) và T2(n) là thời gian chạy của 2 đoạn chương trình P1 ,P2. Thời gian chạy của hai chuơng trình P1, P2 nối nhau là: Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 45.  *T=T1+T2  T=T1/T2  T = T1 T2  T=T1-T2 Câu 69: Nếu T1(n) và T2(n) là thời gian chạy của 2 đoạn chương trình P1 ,P2. Thời gian chạy của hai chuơng trình P1, P2 lồng nhau là  T=T1+T2  *T=T1*T2  T=T1/T2  T=T1-T2 Câu 70: Thời gian chạy của các lệnh gán ,Read,Write là:  O(2)  *O(1)  O(n)  O(3) Câu 71: Thời gian chạy của một chuỗi tuần tự áp dụng quy tắc  Quy tắc Nhân  Quy tắc Nhân đôi  Quy tắc Trừ  *Quy tắc Cộng Câu 72:  O(3)  O(1)  *O(n)  O(nlogn) Phần 6 Câu 1: Cho lệnh gán X := F với F = 5X + 7Y , X=6, Y =X + 2. Sau lệnh này X có giá trị:  53  71  72  *86 Câu 2: Cho lệnh gán X := F với F = arctg(x) , x = Pi / 4 . Sau lệnh gán này X có giá trị  3  Pi  1  *2 Câu 3: Cho điều kiện if B then ( y = 7x + 3 ) else ( y = x^2 + 1 ), B là điều kiện x> 7. Khi x=7 thì y có giá trị là :  47  *50  52  51 Câu 4: Cho lệnh lặp: for i:=1 to 4 do y=3i + 6 . Hãy xác định các kết quả thu được:  7,10,13,16  5,8,11,14 Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 46.  3,6,9,12  *9,12,15,18 Câu 5: Cho lệnh While B do x^2 + 7, trong đó B là x>3. Khi kiểm tra điều kiện B thì thấy x=3. Kết quả của lệnh này là :  *Không thực hiện được phép tính nào cả  =15  =16  =7 Câu 6:  4,11,18,25,32,39,46  Không được gì cả  4,11,18,25,32,39,46,53,60,67  *4,11,18,25,32 Câu 4: Để đổi chỗ 2 phần tử a7, a9 ta đưa thêm một tham số X và ta thực hiện dãy lệnh sau đây:  a7:=a9 ; a9:=a7 ; X:= a7  X:=a9 ; a7:=X ; a9:=a7  *X:=a7 ; a7:=a9 ; a9=X  X:=a7 ; a9:=X ; a7:=a9 Câu 5: Trong giải thuật con mã đi tuần, nếu đầu tiên con mã ở ô (2,7) ( số đầu tiên là dòng, số thứ 2 là cột) thì quân mã có thể đi đến các ô:  (1,5),(2,7),(4,6),(5,8)  (1,6),(2,7),(3,8),(4,6)  *(1,5),(3,5),(4,6),(4,8)  (3,7),(4,6),(4,8),(1,5) Câu 6: Trong giải thuật xếp 8 con hậu, nếu đã có con hậu ở ô (5,3) thì không con hậu nào được nằm ở ô :  (8,1)  (4,5)  *(7,5)  (2,4) Câu 10: Trong giải thuật xếp 8 con hậu, nếu có con hậu ở ô (4,5) thì không con hậu nào được ở ô:  (2,3)  (6,4)  (3,7)  *(1,8) Câu 11: Trên 1 bàn cờ, những ô nằm trên cùng một đường chéo từ dưói lên với ô (i,j) có hệ thức :  *(hàng + cột)=i+j  (hàng + cột)=i-j  (hàng - cột)=i+j  (hàng - côt)=i-j Câu 12: Trên 1 bàn cờ, những ô nằm trên cùng 1 đường chéo từ trên xuống với ô (i,j) có hệ thức Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 47.  hàng-cột=i+j  hàng+cột=i-j  hàng+cột=i+j  *hàng-cột=i-j Câu 13: Trong giải thuật xếp 8 con hậu, nếu có con hậu đã ở ô (2,3) thì không con hậu nào được ở ô :  (6,4)  *(7,8)  (5,2)  (5,7) Câu 14: Khi dùng giải thuật đệ quy để thực hiện bài toán tháp Hà Nội, nếu tháp có 5 vòng thì ta phải thực hiện bao nhiêu thao tác:  64  70  *31  15 Câu 15: Trong số các phép toán sau đây, phép toán nào không được dùng đối với mảng:  *Bổ xung một phần tử vào mảng  Tạo mảng  Tìm kiếm trên mảng  Lưu trữ mảng Câu 16: Cho mảng một chiều A=(a1,a2,…,ax,…,an) và được lưu trữ liên tiếp. Giả thử mỗi phần tử của mảng chiếm 3 ô và phần tử đầu tiên F(1) có địa chỉ 23 thì phần tử F(4) có địa chỉ:  70  52  15  *41 Câu 17: Cho mảng 2 chiều : A={F( i j)} i là chỉ số hàng, j là chỉ số cột. Mảng A có 8 hàng, 9 cột. Lưu trữ liên tiếp mảng A ưu tiên hàng. Nếu phần tử F(11) có địa chỉ 50, mỗi phần tử chiếm 3 ô thì phần tử F(57) có địa chỉ:  152  *176  148  162 Câu 18: Cho mảng 2 chiều A={F( i j)}: i là chỉ số hàng, j là chỉ số cột. Mảng A có 8 hàng, 9 cột. Lưu trữ liên tiếp mảng A ưu tiên cột nếu phần tử F(11) có địa chỉ 230 , mỗi phần tử chiếm 3 ô thì phần tử F(37) có địa chỉ:  382  *380  378  420 Câu 19:  Ưu tiên cột  *Ưu tiên hàng  Trong mọi trường hợp Câu 20: Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893
  • 48.  *Ưu tiên cột  Trong mọi trường hợp  Ưu tiên hàng Câu 21: Dùng phương pháp lưu trữ liên tiếp để lưu trữ một ma trận ( mảng hai chiều) có nhược điểm lớn nhất là :  Cần một lượng ô nhớ lớn  Khó tìm kiếm  *Lãng phí ô nhớ khi ma trận thưa Câu 22: .Dùng STACK để lưu trữ số nhị phân có giá trị bằng số thập phân 215 ta có kết quả: ( số bên trái vào trước số bên phải )  11001110  *11101011  11110011  10111101 Câu 25:  17  10  *18  8 Câu 26:  *b(17)  b(18)  b(20)  b(21) Câu 27: Cho cây nhị phân T. Phép duyệt thứ tự trước cho kết quả là  ADBCEFG  AEBDCGF  AEDBCFG  *ABDECFG Câu 28: Cho cây nhị phân T. Phép duyệt thứ tự giữa cho ta kết quả là:  *DBEAFCG  BEDACFG  DEBAGFC  DBEACFG Câu 29: Cho cây nhị phân T. Phép duyệt thứ tự sau cho ta biết kết quả là:  EBFCGAD  *DEBFGCA  DEBGCFA  DBEFAGC Câu 30: Cho cây nhị phân T. Phép duyệt cây theo thứ tự trước cho kết quả ABDEHCFIGJ. Nếu duyệt theo thứ tự giữa ta có kết quả: DBHEAFICGJ. Hãy cho biết các nút của cây con trái: Downloaded by Tu?n Nguy?n (tuantienti0710@gmail.com) lOMoARcPSD|10727893