- Câu hỏi 114186:
Đoạn mã sau đây làm nhiệm vụ gì?
void SXDSSV( int n, SV ds[]){ int min, i, j; SV tg; for( i=0 ; i<n-1 ; i++ ) { min = i; for( j=i+1 ; j<n ; j++ ) if ( ds[j].Tuoi < ds[min].Tuoi ) min = j; if( min != i )
{ tg = ds[min];
ds[min] = ds[i];
ds[i] = tg; } }}
- Câu hỏi 114195:
Cho mảng a gồm các phẩn tử có giá trị như sau:
74326
Số lần hoán vị 2 phần tử khác nhau khi áp dụng thuật toán chọn trực tiếp để sắp xếp mảng tăng dần là:
- 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
”
- Câu hỏi 241678:
Cho mảng a gồm các phần tử: 8, 3, 7, 6, 4,2.
Cho biết kết quả ở bước thứ 3 khi áp dụng thuật toán sắp xếp Insertion tăng dần trên mảng các phần tử trên.
- Câu hỏi 241679:
Cho thuật toán sau:
int LinenearSearch( int M[], int N, int X)
{
int k = 0;
while (M[k] !=X && k<N)
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:
- 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?
- Câu hỏi 241689:
Cho mảng a gồm các phẩn tử có giá trị như sau:
1356
Số lần hoán vị 2 phần tử khác nhau khi áp dụng thuật toán nổi bọt để sắp xếp mảng giảm dần là:
- Câu hỏi 563553:
Cho biết kết xuất của đoạn chương trình sau:
long F(int n)
{
if ((2*n+1) ==1)
return 1;
else
return (2*n+1)+F(n-1);
}
void main()
{
long x=F(3);
printf("%ld", x);
}
- Câu hỏi 563556:
Để xác định giải thuật đệ quy cần xác định gì?
- Câu hỏi 563566:
Cho mảng a có N (N>=2) phần từ, x là một biến, xét đoạn mã sau cho biết đoạn mã biểu diễn thuật toán gì?
Bước 1: Khởi gán i = 0, s = 0, qua bước 2;
Bước 2: Nếu a[i] == x thì
s++; qua bước 3
Bước 3: i = i + 1;
Nếu i == n: hết mảng. Dừng, in s ra màn hình
Ngược lại: Lặp lại bước 2