- Câu hỏi 170816:
Đoạn mô tả này thuộc thuật toán nào:
Bước 1: i = 0
Bước 2: tính các giá trị j = i + 1
Bước 3: Trong khi j<n thực hiện
- nếu a[j] < a[i] thì hoán đổi a[i] với a[j]
- j = j + 1;
Bước 4: i = i +1
nếu i<n-1 thì lặp lại bước 2, ngược lại thì dừng
B. Tìm kiếm tuyến tính
C. Sắp xếp chèn trực tiếp
.
D. Sắp xếp đổi chỗ trực tiếp
- Câu hỏi 83250:
Cho đoạn chương trình:
void QuickSort( int a[ ], int L , int R )
{
int i,j,x;
x= a[(L+R)/2];
i =…;
j = ...;
do
{
while ( a[i] < x ) i++;
while ( a[j] > x ) j--;
if ( i <= j )
{
Hoanvi (a[i], a[j]);
i++; j--;
}
} while(i<j);
if (L<j) QuickSort(a,L,j);
if (i<R) QuickSort(a,i,R);
}
Điền giá trị nào vào đoạn …. cho đúng
A. i=0; j=n-1;
B. i=0; j=R;
C. i=L; j=n-1;
D. i=L; j=R;
- Câu hỏi 305016:
Đoạn mã cài đặt hủy bỏ một phần tử đứng sau một phần tử q trong danh sách liên kết đơn:
void RemoveAfter ( LIST &Q , Node *q ){
Node *p;
if (q != NULL)
{
p = q -> next;
if (p != NULL)
{
if (p == Q.Tail)
{
q->next = NULL;
Q.Tail = q;
}
[1] ………………….
free(p);
}
}
else RemoveHead(Q);
}
Dòng lệnh cần thiết được đặt vào chỗ trống tại dòng số [1]:
A. q -> next = p -> next;
B. p = q;
C. q = p;
D. p -> next = q -> next;
- Câu hỏi 305024:
Cho khai báo cấu trúc như sau:
struct CB{ int mcb; char hoten[20]; char ns[12]; float hsl,pc,tt;};struct Node{ CB info; struct Node *next;};
struct List{ Node *head, *tail;};
Đoạn mã sau đây thực hiện yêu cầu xử lý gì?
Node *TimCBMa(List Q,int k){ Node *p; for(p=Q.Head; p!=NULL; p=p->next) if(p->info.mcb==k) break; return p;}
A. Thực hiện tìm kiếm trong DSLK đôi chứa các CanBo xem có CanBo nào có mã là k hay không? Trả lại thông tin nút chứa cán bộ nếu tìm thấy ngược lại trả lại giá trị NULL
B. Thực hiện tìm kiếm Cán bộ theo mã cán bộ
C. Thực hiện tìm kiếm trong DSLK đơn có chứa Cán bộ với tên là k nào đó hay không?
D. Thực hiện tìm kiếm trong DSLK đơn chứa các CanBo xem có CanBo nào có mã là k hay không? Trả lại thông tin nút chứa cán bộ nếu tìm thấy ngược lại trả lại giá trị NULL
- Câu hỏi 114194:
Cho dãy sau: 42, 23, 74, 11, 65, 58. Dùng phương pháp sắp xếp chèn trực tiếp (Insertion Sort) để sắp xếp tăng dần, sau 3 lần lặp kết quả của dãy là thế nào?
A. 11, 23, 42, 74, 58, 65
B. 11, 23, 42, 65, 74, 58
C. 11, 23, 42, 74, 65, 58
D. 11, 23, 58, 65, 42, 74
- Câu hỏi 114204:
Đây là định nghĩa của độ phức nào? “được tính là tổng số chi phí về mặt tổng thời gian cần thiết để hoàn thành thuật toán, được đánh giá dựa vào số lượng các thao tác được sử dụng trong thuật toán dựa trên bộ dữ liệu đầu vào
”
A. Thời gian
B. Cả hai lựa chọn đều đúng
C. Cả hai lựa chọn đều sai
D. Không gian
- Câu hỏi 241680:
Cho dãy sau: 42, 23, 74, 11, 65, 58. Dùng phương pháp sắp xếp đổi chỗ trực tiếp (Interchange Sort) để sắp xếp tăng dần, sau 3 lần lặp kết quả của dãy là thế nào?
A. 11, 23, 42, 58, 74, 65
B. 11, 23, 42, 74, 65, 58
C. 11, 23, 42, 65, 58, 74
D. 11, 23, 42, 58, 65, 74
- Câu hỏi 563556:
Để xác định giải thuật đệ quy cần xác định gì?
A. Phần tử neo
B. Cả hai lựa chọn đều đúng
C. Công thức tổng quát
D. Cả hai lựa chọn đều sai
- Câu hỏi 563565:
Cho biết kết quả của đoạn chương trình sau:
long f3(int n)
{
if (n==1)
return 1;
else
return n*n + f3(n-1);
}
int main()
{
long x = f3(3);
printf("%ld", x);
getch();
}