NEW
Font size
WorksheetsCTDL_4
Total questions: 50
Worksheet time: 50mins
Cho biết ý nghĩa cảu lệnh sau:
for(i=1; i<n;i++)
sum+=arr[i];
Tính tổng các phần tử trong mảng arr.
Tính tổng các bình phương của n số nguyên dương đầu tiên
Tính tổng n số nguyên dương đầu tiên
Gán các phần tử trong mảng arr cho sum
Trong ngôn ngữ lập trình C, để nhập số nguyên n từ bàn phím sử dụng lệnh nào?
scanf("%f", &n)
scanf("%d", &n)
scanf("%f", n)
scanf("%f", n)
Trong ngôn ngữ lập trình C, để nhập số thực n từ bàn phím sử dụng lệnh nào?
scanf("%f", n)
scanf("%d", &n)
scanf("%d", n)
scanf("%f", &n)
Trong ngôn ngữ lập trình C, điều kiện kiểm tra n khác 0, ta sử dụng lệnh nào ?
n<>0
n==0
n!=0
n><0
Trong ngôn ngữ lập trình C, "nếu phần tử đầu tiên của mange arr bằng 0 thì trả về giá trị -1" được biểu diễn bằng lệnh nào
if ( arr[0] =0) return -1
if ( arr[0] ==0) return -1
if ( arr[1] =0) return -1
if ( arr[1] ==0) return -1
Cho mảng số nguyên arr và biến sum, trong ngôn ngữ lập trình C sử dụng lệnh nào để gán giá trị đầu tiên của mảng arr cho sum?
sum=arr[1]
sum=arr[0]
arr[0]=sum
arr[1]=sum
Cho biết phần đệ quy của hàm sau:
i nt Tinh (int n){
if(n==0) return 0;
if( abs(n) ==1) return 1;
return Tinh(abs(n)-1 +n*n;
}
if(n==0) return 0;
if(n==0) return 0;
if( abs(n) ==1) return 1;
return Tinh(abs(n)-1 +n*n;
if( abs(n) ==1) return 1;
Cho biết mô hình dưới đây mô tả cách hoạt động của giải thuật nào?
Giải thuật tìm kiếm
Giải thuật đệ quy
Giải thuật sắp xếp mảng số nguyên
Giải thuật gọi hàm tìm kiếm
Trong giải thuật đệ quy tính nào bắt buộc phải có?
Tính an toàn
Tính hiệu quả
Tính dừng
Tính bảo mật
Cho biết phần cơ sở của giải thuật sau:
int DigitCount(int n){
if(n<0) return -1;
if(n==0) return 0;
return 1+ DigitCount(n/10);
}
if(n<0) return -1;
if(n==0) return 0;
if(n<0) return -1;
if(n==0) return 0;
return 1+ DigitCount(n/10);
Cho biết kết quả khi gọi hàm DigitCount (2345) biết ":
int DigitCount (int n) {
if (n<0) return -1;
if(n==0) return 0;
return 1+ DigitCount(n/10);
}
4
2
3
5
Cho biết phần đệ quy của giải thuật sau:
int DigitCount(int n){
if(n<0) return -1;
if(n==0) return 0;
return 1+ DigitCount(n/10);
}
if(n<0) return -1;
if(n==0) return 0;
if(n<0) return -1;
return 1+ DigitCount(n/10);
if(n==0) return 0;
Với khai báo sau, danh sách L có kiểu List chưa nhiều nhất bao nhiêu phần tử?
typedef struct list{
int data[200];
int Count;
}List;
200 phần tử
100 phần tử
không giới hạn phần tử
10 phần tử
Điền phần còn thiếu vào chỗ chấm chấm trong phát biểu sau: " Hàng đợi hoạt động theo cơ chế ...., ngăn xếp hoạt động theo cơ chế....."
LIFO, FIFO
LIFO, LIFO
FIFO, FIFO
FIFO, LIFO
Cho khai báo sau :
typedef struct ds { int Data[1000]; int Count; } List
TRong ngon ngữ lập trình C, nguyên mẫu nào được khai báo đúng khi kiểm tra danh sách rỗng?
int Empty( List L);
int Empty( List & L);
int Empty( List *L);
int Empty( L);
Mỗi phần tử trong danh sách liên kết kép gồm mấy trường.
6
6
4
3
Khai báo dưới đây là khai báo cấu trúc dữ liệu cho một phần tử của danh sách nào?
typedef struct node{
item data ; struct node *prev, *next;} Node;
Danh sách liên kết đơn
Danh sách liên kết kép
Danh sách đặc
Danh sách liên kết vòng
Khi khai báo cấu trúc dữ liệu cho một phần tử của danh sách liên kết kép có mấy con trỏ ?
3 con trỏ
2 con trỏ
4 con trỏ
5 con trỏ
Chọn biểu thức hiệu tố ứng với cây sau:
11 29 + 50 71 99 + **
11+29-50 * 71 + 91
* + 11 29 * 50 + 71 99
11 29 + * 50 + 71 99 *
Cây sau đây là cây gì ?
Cây nhị phân
Cây tam phân tìm kiếm
Cây nhị phân tìm kiếm
Cây tam phân
Cây nhị phân dưới đây có chiều dài là bao nhiêu
11
12
13
14
Cho biết mức của cây sau:
6
5
4
11
Cho cây nhị phân tìm kiếm chứa các số nguyên, kết quả duyệt trước ( NLR) của cây con trái của nút 45:
45,20,11,2,15,29,32
20, 11,2,15,29,32
20,11,2,15,29,32
2,15,11,32,29,20,45
Cây nhị phân tìm kiếm chứa các số nguyên , kết quả duyệt sau ( LRN) của cây con phải của nút 45 :
50, 72, 99, 91, 65
20,11,2,15,29,32
2,15,11,32,29,20,45
45,20,11,2,15,29,32
Cho biết độ phức tạp của phương pháp sắp xếp chèn trực tiếp mảng số nguyên gồm n phần tử
O(n)
O (log2n)
O (n3)
O (n2)
Cho biết độ phức tạp của phương pháp sắp xếp chọn trực tiếp mảng số nguyên gồm n phần tử
O(n)
O (log2n)
O (n2)
O (n3)
Cho biết độ phức tạp của phương pháp sắp xếp nổi bọt mảng số nguyên gồm n phần tử
O(n)
O (log2n)
O (n3)
O (n2)
Cho biết độ phức tạp của phương pháp sắp xếp trộn mảng số nguyên gồm n phần tử
O (nlog2n)
O(n)
O (n3)
O (log2n)
Cho biết độ phức tạp của phương pháp tìm kiếm tuần tự số nguyên x trên mảng số nguyên gồm n phần tử trong trường hợp tồi nhất
O(n)
O (nlog2n)
O (log2n)
O (n3)
Cho biết độ phức tạp của phương pháp tìm kiếm nhị phân số nguyên x trên mảng số nguyên gồm n phần tử
O (nlog2n)
O(n)
O (log2n)
O (n3)
Đánh giá độ phức tạp của gải thuật sau, " lệnh 1, lệnh 2" là các lệnh có độ phức tạp là O(1) , m, n là đầu vào
for( i=1; i<=n; i++)
//lệnh 1
for(j=1; j<=m; j++)
//lệnh 2
O(min(m,n))
O(max(m,n))
O(1)
O(n)
Đánh giá độ phức tạp của thuật toán sau
s=0;
for( i=0; i<n; i++){
p=1;
for(j=1;j<=i;j++)
p=p*x/j;
s = s+p;
}
O (n2)
O (log2n)
O (n3)
O(n)
Đánh giá độ phức tạp của thuật toán sau:
for ( i=1; i<=n; i++){
for( u=1; u<=m; u++)
for( v=1; v<=n; v++)
//lệnh
}
O (n2)
O (log2n)
O (n3)
O (n2 *m)
Tìm mô tả đúng nhất cho hàm sau:
Tìm ước chung lớn nhất của hai số a,b
Tìm bội số chung nhỏ nhất của a,b
Tính tổng hai số a,b
Kiểm tra a,b có chia hết cho nhau không
Tìm hệ thức truy hồi cho hàm sau:
int T( int n){
if(n==1) return 1;
return 3 *T(n/2) +n;
}
T(n) = 4T(n/3) +n
T(n) = 3T(n/2) +n
T(n) = 4T(n/3) +n2
T(n) = 9T(n/3) +n2
Tìm hệ thức truy hồi cho hàm sau:
int T(int n){
if( n==1) return 1;
return 4*T(n/3) +n;
}
T(n)=4T(n/3) +n;
T(n)=3T(n/2) +n;
T(n)=4T(n/3) +n2;
T(n)=9T(n/3) +n2;
Tìm mô tả đúng nhất cho hàm dưới đây:
Node *Make_Node (item x){
Node *P =(Node*) malloc(sizeof(Node));
if(P!=NULL){
P->data=x; P->next=NULL; P->prev=NULL;
}
return P;
}
Hàm tạo một phần tử trong dánh sách liên kết vòng có nội dung x
Hàm tạo một phần tử trong dánh sách đặc có nội dung x
Hàm tạo một phần tử trong dánh sách liên kết đơn có nội dung x
Hàm tạo một phần tử trong dánh sách liên kết kép có nội dung x
Tìm mô tả đúng nhất cho hàm Len dưới đây, với khai báo:
typedef struct node{ int infor; struct node *next;}Node;
typedef Node *Listlink;
int Len (Listlink L){
Node *p=L;
int i=0;
while (p!=NULL){
i++;
p=p->next;
}
return i;
}
Hàm đếm số phần tử trong danh sách liên kết kép.
Hàm đếm số phần tử trong danh sách liên kết đơn.
Hàm đếm số phần tử trong danh sách liên kết đặc
Hàm đếm số phần tử trong danh sách liên kết vòng.
Tìm mô tả đúng nhất cho hàm search dưới đây, với khai báo:
typedef struct node{
int infor;
struct node *next;
}Node;
typedef Node *Listlink;
Node *search (Listlink L, int x){
Node *p=L;
while (p!=NULL && p->infor !=x)
p=p->next;
return p;
}
Hàm tìm kiếm số nguyên x trong danh sách liên kết đơn
Hàm tìm kiếm số nguyên x trong danh sách liên kết kép
Hàm tìm kiếm số nguyên x trong danh sách liên kết vòng
Hàm tìm kiếm số nguyên x trong danh sách đặc
Cho cấu rúc lưu trữ dữ liệu cho cây nhị phân tìm kiếm
typedef struct node{
int key;
struct node *Left, *Right;
}NODE;
typedef NODE *TREE;
TREE t;
Điều kiện nào dùng để đếm số nút trên cây nhị phân tìm kiếm t là số nguyên chẵn.
(t->key%2!=0)
(t->key%2=0)
(t->key%2==0)
(t%2==0)
Cho cấu trúc lưu trữ dữ liệu cho cây nhị phân tìm kiếm:
typedef struct node{
int key;
struct node *Left, *Right;
}NODE;
typedef NODE *TREE;
TREE Root;
Điều kiện nào dùng để đếm số nút trên cây nhị phân tìm kiếm Root là số nguyên lẻ.
(Root->key%2=0)
(Root->key%2==0)
(Root %2 =0)
(Root->key%2!=0)
Cho cấu trúc lưu trữ dữ liệu cho cây nhị phân tìm kiếm:
typedef struct node{
int key;
struct node *Left;
struct node *Right;
}Node;
typedef Node *TREE;
int isEmpty(TREE root){
if(root == NULL)
return 1;
}
Hàm isEmpty thực hiện chức năng gì ?
Hàm đếm số nút trên cây root
KIểm tra cây root có khác rỗng không
Hàm khởi tạo cây root rỗng
Hàm đếm số nút lá trên cây root
Hãy điền vào chỗ chấm chấm trong hàm Interchange:
void Interchange (int K[] , int n){
int i,j;
for ( i=0; i<n -1 ; i++)
for( j=i+1 ; j<n ; j++)
.................................
swap( &K [i] , & K [ j ]);
}
if ( K [i ] == K [ j ])
if ( K [i ] >< K [ j ])
if ( K [i ] > K [ j ])
if ( K [i ] = K [ j ])
Cho kết quả của lần lặp thứ 4 khi sắp xếp mảng số nguyên theo phương pháp nổi bọt của mảng ban đầu : 9, 3, 6, 5, 3, 10, 8, 4
3, 3, 4,5 9, 6 , 8,10
9, 3, 6, 5,, 3, 10 , 8, 4
3, 4 ,5 ,3, 9 , 6, 8, 10
3, 3 , 4 ,5 ,6, 8, 9 ,10
Số lần hoán vị các phần tử trong trường hợp tốt nhất theo phương pháp sắp xếp đổi chỗ trực tiếp
0
1
n* ( n-1) / 2
n*n/2
Đánh gia sđộ phức tạp của giải thuật sau , biết " lệnh 1, lệnh 2" là các lệnh có độ phức tạp là O(1), m, n, x, y là đầu vào.
for( i-1; i<=n;i++)
for ( j= 1; j<=m ;j++){
for ( k=1; k<=x ;k++)
//lệnh 1
for ( h=1; h<=y ; h++)
//lệnh 2
}
O ( n *min (x*m ,x*z))
O ( n* m *max (x ,y))
O( max (m,n))
O( min (m,n))
Cho biết chức năng của hàm kt ( n) dưới đây:
int kt( int n) {
if( n%2==1 && n!=0) return 0;
if( n%2==0) return kt (n/10);
}
Kiểm tra số nguyên n chia hết cho 2
Kiểm tra số nguyên n có là số nguyên tố
Kiểm tra số nguyên n có là số toàn lẻ
Kiểm tra số nguyên n có là số toàn chẵn
Hàm loại bỏ phần tử ở vị trí k trong danh sách đặc
Hàm loại bỏ phần tử ở vị trí k trong danh sách liên kết đơn
Hàm loại bỏ phần tử ở vị trí k trong danh sách liên kết kép
Hàm loại bỏ phần tử ở vị trí k trong danh sách liên kết vòng
Hàm Count thực hiện chức năng gì
Duyệt cây root theo thứ tự giữa
Đếm số nút trên cây R
Duyệt cây root theo thứ tự sau
Tìm kiếm nút trên cây
Trong phương pháp sắp xép chọn lọc trực tiếp mảng số nguyên gồm n phần tử, số phép gán tối đa là bao nhiêu
Tối đa (n-1)n/2 lần
Tối đa n*n/2 lần
Tối đa ( n+1)n/2 lần
Tối đa ( n+2)n/2 lần
