- Câu hỏi 170792:
Cho thuật toán sau:
int LinearSearch( float M[], int N, float X)
{
int k = 0;
M[N] = X;
while (M[k] !=X)//n+1
k++;
if (k<N) return k;
return -1;
}
Chọn câu đúng nhất trong trường hợp xấu nhất khi không tìm thấy phần tử nào có giá trị bằng X:
A. Số phép gán: Gmax = 1 Số phép so sánh: Smax = N + 2
B. Số phép gán: Gmax = 2 Số phép so sánh: Smax = N + 1
C. Số phép gán: Gmax = 2 Số phép so sánh: Smax = 2N + 2
D. Số phép gán: Gmax = 2 Số phép so sánh: Smax = N + 2
- Câu hỏi 170793:
Đối với thuật toán sắp xếp chọn trực tiếp cho dãy phần tử sau (10 phần tử):
16 60 2 25 15 45 5 30 33 20
Cần thực hiện bao nhiêu lựa chọn phần tử nhỏ nhất để sắp xếp mảng M có thứ tự tăng dần
A. 8 lần
B. 10 lần
C. 7 lần
D. 9 lần
- Câu hỏi 170795:
Các trường hợp chèn thêm một phần tử mới vào danh sách liên kết đơn gồm:
A. Chèn thêm vào đầu danh sách và vào cuối danh sách
B. Chèn thêm vào đầu danh sách, vào cuối danh sách và vào sau một phần tử q đã biết
C. Chèn thêm vào cuối danh sách và vào sau một phần tử q đã biết
D. Chèn thêm vào đầu danh sách và vào sau một phần tử q đã biết
- Câu hỏi 170824:
Các thành phần của danh sách đơn gồm:
A. Dữ liệu (data)
B. Liên kết (link)
C. Số phần tử của danh sách (number)
D. Dữ liệu (data) và liên kết (link)
- Câu hỏi 170825:
Danh sách được cài đặt bằng cách nào:
A. Cài đặt bằng mảng
B. Cài đặt bằng danh sách liên kết
C. Cả hai đáp án đều sai
D. Cả hai đáp án đều đúng
- Câu hỏi 305019:
Cho khai báo CTDL như sau:
struct CB{ int mcb; char hoten[20]; char ns[12]; float hsl,pc;};struct Node{ CB info; struct Node *next;};
struct List{ Node *head, *tail;};
Đâu là đoạn mã để sắp xếp danh sách Cán bộ theo thứ tự tăng dần của hệ số lương (hsl);
A. void SXCBThanhTien(List &Q)
{ Node *p,*q; CB tg; for(p=Q.Head; p!=NULL; p=p->next) for(q=p->next; q!=NULL; q=q->next) if(p->info.hsl > q->info.hsl) { tg = p->info; p->info = q->info; q->info = tg; }
}
B. void SXCBThanhTien(List &Q)
{ Node *p,*q; CB tg; for(p=Q.Head; p!=NULL; p=p->next) for(q=p->next; q!=NULL; q=q->next) if(p->info.hsl < q->info.hsl) { tg = p->info; p->info = q->info; q->info = tg; }
}
C. void SXCBThanhTien(List &Q)
{ Node *p=Q.Head,*q; CB tg; while(p!=NULL)
{
q=p->next; while(q!=NULL) if(p->info.pc > q->info.pc) { tg = p->info; p->info = q->info; q->info = tg; }
}
}
D. void SXCBThanhTien(List &Q)
{ Node *p,*q; CB tg; for(p=Q.Head; p!=NULL; p=p->next) for(q=p->next; q!=NULL; q=q->next) if(p->info.pc < q->info.pc) { tg = p->info; p->info = q->info; q->info = tg; }
}
- Câu hỏi 305030:
Đoạn mã để tạo ra nút mới có thành phần là x trong danh sách liên kết đơn với mỗi nút gồm hai thành phần (infor, next) sau:
Node* get_node( Data x ){
Node *p;
p = (Node*)malloc(sizeof(Node));
if ( p == NULL )
{
printf(“Ko du bo nho”);
exit(1);
}
p -> infor = x;
p -> ….. = NULL;
return p;
}
Điền phần còn thiếu vào chỗ …………..
A. next
B. data
C. link
D. infor
- Câu hỏi 241688:
Cho dãy sau: 23, 78, 45, 8, 32, 56. Dùng phương pháp sắp xếp chọn trực tiếp (Selection Sort) để sắp xếp tăng dần, sau 5 lần lặp thì kết quả của dãy là thế nào?
A. 23, 78, 45, 8, 32, 56
B. 8, 23, 32, 45, 56, 78
C. 8, 23, 78, 45, 32, 56
D. 8, 23, 32, 78, 56, 45
- Câu hỏi 563552:
Trong giải thuật đệ quy thì lời giải trực tiếp mà không phải nhờ đến một bài toán con nào đó là thành phần nào?
A. Công thức tổng quát
B. Phần tử neo
C. Cả hai lựa chọn đều sai
D. Cả hai lựa chọn đều đúng
- Câu hỏi 563558:
Độ phức tạp thuật toán được đánh giá có loại nào?
A. Cả hai loại được liệt kê
B. Độ phức tạp thời gian
C. Độ phức tạp không gian
D. Không phải các loại liệt kê