bộ tài liệu gồm 20 câu hỏi trắc nghiệm có đáp án 1010 cho kì thi kết thúc học phần. Tập hợp các dạng hàm trong giải thuật như quy lui, mệnh đề logic, biểu thức logic, sinh hoán, sâu nhị phân, hàm số thuận nghịch, truy hồi tuyến tính..v...v...
Trang 1TRẮC NGHIỆM KIẾN TRÚC GIẢI THUẬT
✓ Question 1
Question text
Cho hàm đệ quy (quay lui) liệt kê các xâu nhị phân độ dài n như dưới đây:
-
void Back_Track(int i){
for(int j=0; j<=1; j++){
X[i]=j;
if(i==n)
print();
else
Back_Track(i+1);
}
return;
}
-
Cho n = 4, lời gọi hàm Back_Track(2) phải thực thi tổng cộng bao nhiêu lời gọi hàm
Back_Track(…) tiếp theo khi đến được lệnh return:
a.8
b.4
c.6
d.Không có đáp án nào trong các đáp án còn lại là đúng
e.2
✓ Question 2
Question text
Cho x, y, r là các mệnh đề logic Biểu thức logic [( x ⊕ y) ↔ −(x ↔ y)] ˄ (r ˄ −r) là:
a.Không phải là mệnh đề;
b.Không có đáp án nào trong các đáp án còn lại là đúng
c.Mệnh đề thỏa được nhưng không vững chắc
d.Mệnh đề vững chắc (hoặc hằng đúng);
e.Mệnh đề không thỏa được (hoặc mâu thuẫn hoặc hằng sai);
Trang 2✓ Question 3
Question text
Dưới đây cho hàm sinh hoán vị tiếp theo (theo thứ tự từ điển) 1 hoán vị cho trước của n phần tử
1, 2, … , n:
-
1: void SinhHoanVi(){
2: int j=n;
3: while((j>0) && (X[j]>=X[j+1])) j ;
4: if(j=0){
5: cauhinhcuoi=true; return;
6: }
7: int k=n;
8: while(X[k]<=X[j]) k ;
9: int tmps; X[j]=X[k]; X[k]=tmps;
10: int l=j+1, r=n;
11: while(l<=r){
12: tmps=X[l]; X[r]=X[l]; X[l]=tmps; l++; r ;
13: }
14: return;
15:}
-
Hàm sai ở dòng:
a.Tất cả các lựa chọn khác đều đúng
b.4 và 9
c.4 và 12
d.9 và 12
e.2 và 4
✓ Question 4
Question text
Cho hàm đệ quy (quay lui) liệt kê các xâu nhị phân độ dài n như dưới đây:
-
1: void Back_Track(int i){
Trang 32: for(int j=0; j<2; j++){
3: X[j]=i;
4: if(i==n)
5: print();
6: else
7: Back_Track(j+1);
8: }
9: return;
10: }
-
Hàm sai ở dòng:
a.3 và 7
b.4 và 7
c.3 và 4
d.Không có đáp án nào trong các đáp án còn lại là đúng
e.2 và 3
✓ Question 5
Question text
Số xâu nhị phân độ dài 9 và không có 3 số 1 liên tiếp là:
a.276
b.273
c.275
d.Không có đáp án nào trong các đáp án còn lại là đúng
e.274
✓ Question 6
Question text
Cho hàm đệ quy (quay lui có điều kiện) liệt kê các hoán vị của n phần tử 1, 2, …, n như dưới đây: -
1: void Back_Track(int i){
2: for(int j=1; j<n+1; j++){
3: if(unused[j]==1){
4: s[i]=j;
5: unused[j]=0;
6: if(i==n)
Trang 47: print();
8: else
9: Back_Track(i+1);
10: }
11: unused[j]=1;
12: }
13: return;
14: }
-
Hàm sai ở dòng:
a.6
b.11
c.2
d.4
e.Không có đáp án nào trong các đáp án còn lại là đúng
✓ Question 7
Question text
Cho hàm đệ quy (quay lui) liệt kê các tổ hợp chập k phần tử của n phần tử 1, 2, …, n như dưới đây:
-
1: void BackTrack(int j){
2: for(int i=X[j-1]+1; i<=n-k+j; i++){
3: X[i]=j;
4: if(j==k)
5: print();
6: else
7: BackTrack(j+1);
8: }
9: }
-
Hàm sai ở dòng:
a.Không có đáp án nào trong các đáp án còn lại là đúng
Trang 5b.2
c.3
d.4
e.7
✓ Question 8
Question text
Cho hàm sinh xâu nhị phân độ dài n tiếp theo 1 xâu nhị phân cho trước (theo thứ tự từ điển) như dưới đây:
-
1: void SinhXauNhiPhanTiepTheo(){
2: int i=n;
3: while((i>0) && (X[i]==1)) i ;
4: if(!i){
5: cauhinhcuoi=true;
6: return;
7: }
8: for(int j=i; j<n+1; j++) X[j]=1-X[j];
9: return;
10: }
-
Hàm sai ở dòng:
a.2
b.Không có đáp án nào trong các đáp án còn lại là đúng
c.6
d.8
e.4
✓ Question 9
Question text
Số xâu nhị phân độ dài 9 và có 3 số 1 liên tiếp là:
a.238
b.Không có đáp án nào trong các đáp án còn lại là đúng
c.241
d.239
e.240
✓ Question 10
Trang 6Question text
Trong các số tự nhiên có 9 chữ số, số các số thuận nghịch (ví dụ số 123454321 là số thuận nghịch có 9 chữ số) có tổng các chữ số là 17 là:
a.318
b.315
c.317
d.Không có đáp án nào trong các đáp án còn lại là đúng
e.316
✓ Question 11
Question text
Cho hàm đệ quy (quay lui) liệt kê các tổ hợp chập k phần tử của n phần tử 1, 2, …, n như dưới đây:
-
void BackTrack(int j){
for(int i=X[j-1]+1; i<=n-k+j; i++){
X[j]=i;
if(j==k)
print();
else
BackTrack(j+1);
}
return;
}
-
Cho n = 5, k = 3, lời gọi hàm Back_Track(1) phải thực thi (chờ kết thúc) tổng cộng bao nhiêu lời gọi hàm Back_Track(…) tiếp theo để đến được lệnh return:
a.7
b.9
c.Không có đáp án nào trong các đáp án còn lại là đúng
d.8
e.6
✓ Question 12
Question text
Số xâu nhị phân độ dài 8 và không có 2 số 0 liên tiếp là:
a.55
Trang 7b.54
c.52
d.Không có đáp án nào trong các đáp án còn lại là đúng
e.53
✓ Question 13
Question text
Giá trị của A4 ứng với n = 4 trong hệ thức truy hồi tuyến tính thuần nhất An = 2An−1 + 5An−2 – 6An−3 với A0 = 7, A1 = -4, A2 = 8 là:
a.-28
b.-30
c.Không có đáp án nào trong các đáp án còn lại là đúng
d.29
e.31
✓ Question 14
Question text
Dưới đây cho hàm sinh tổ hợp tiếp theo (theo thứ tự từ điển) 1 tổ hợp cho trước gồm k phần tử của n phần tử 1, 2, … , n:
-
1: void SinhToHop_k_n(){
2: int t==k;
3: while((t>0) && (X[t]==n-k+t)) t ;
4: if(!t){
5: cauhinhcuoi=true;
6: return;
7: }
8: X[t]+=1;
9: for(int j=t+1; j<k+1; j++) X[j]=X[t]+(j-t);
10: return;
11: }
-
Hàm sai ở dòng:
a.8 hoặc 9
b.1 hoặc 3
c.2 hoặc 4
d.4 hoặc 8
Trang 8e.Không có đáp án nào trong các đáp án còn lại là đúng
✓ Question 15
Question text
Cho hàm đệ quy (quay lui có điều kiện) liệt kê các hoán vị của n phần tử 1, 2, …, n như dưới đây: -
void Back_Track(int i){
for(int j=1; j<=n; j++){
if(unused[j]==1){
s[i]=j;
unused[j]=0;
if(i==n)
print();
else
Back_Track(i+1);
unused[j]=1;
}
}
return;
}
-
Cho n = 3, lời gọi hàm Back_Track(1) phải thực thi tổng cộng bao nhiêu lời gọi hàm
Back_Track(…) cho tới khi đến được lệnh return:
a.6
b.Không có đáp án nào trong các đáp án còn lại là đúng
c.9
d.8
e.7
✓ Question 16
Question text
Sử dụng phương pháp sinh xâu nhị phân (độ dài n = 15 bít) theo thứ tự từ điển, 4 xâu nhị phân tiếp theo của xâu nhị phân 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 theo thứ tự là:
a
0 1 0 1 0 1 0 1 0 1 0 1 0 1 1
0 1 0 1 0 1 0 1 0 1 0 1 1 0 0
Trang 90 1 0 1 0 1 0 1 0 1 0 1 1 0 1
0 1 0 1 0 1 0 1 0 1 0 1 1 1 0
b
Không có đáp án nào trong các đáp án còn lại là đúng
c
0 1 0 1 0 1 0 1 0 1 0 1 1 0 0
0 1 0 1 0 1 0 1 0 1 0 1 1 0 1
0 1 0 1 0 1 0 1 0 1 0 1 1 1 0
0 1 0 1 0 1 0 1 0 1 0 1 0 1 1
d
0 1 0 1 0 1 0 1 0 1 0 1 0 1 1
0 1 0 1 0 1 0 1 0 1 0 1 1 0 1
0 1 0 1 0 1 0 1 0 1 0 1 1 1 0
0 1 0 1 0 1 0 1 0 1 0 1 1 0 0
e
0 1 0 1 0 1 0 1 0 1 0 1 0 1 1
0 1 0 1 0 1 0 1 0 1 0 1 1 0 0
0 1 0 1 0 1 0 1 0 1 0 1 1 1 0
0 1 0 1 0 1 0 1 0 1 0 1 1 0 1
✓ Question 17
Question text
Giá trị của A10 ứng với n = 10 trong hệ thức truy hồi tuyến tính thuần nhất An = An−1 + 2An−2 với A0 = 4, A1 = 8 là:
a.4095
b.4094
c.4097
d.Không có đáp án nào trong các đáp án còn lại là đúng
e.4096
✓ Question 18
Question text
Cho x, y, r là các mệnh đề logic Biểu thức logic r → [( x ⊕ y) ↔ −(x ↔ y)] là:
a.Mệnh đề thỏa được nhưng không vững chắc
b.Không phải là mệnh đề;
c.Mệnh đề không thỏa được (hoặc mâu thuẫn hoặc hằng sai);
d.Không có đáp án nào trong các đáp án còn lại là đúng
e.Mệnh đề vững chắc (hoặc hằng đúng);
✓ Question 19
Trang 10Question text
Giá trị của A8 ứng với n = 8 trong hệ thức truy hồi tuyến tính thuần nhất An = –4An−1 – 4An−2 với A0 = 0, A1 = 1 là:
a.-1024
b.1025
c.Không có đáp án nào trong các đáp án còn lại là đúng
d.-1026
e.1027
✓ Question 20
Question text
Số xâu nhị phân độ dài 8 và có 2 số 0 liên tiếp là:
a.204
b.202
c.Không có đáp án nào trong các đáp án còn lại là đúng
d.203
e.201
Trang 11BẢNG ĐÁP ÁN
Câu hỏi Đáp án