[Unable to find Component]

Cấu trúc dữ liệu và giải thuật - IT05 (255)

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; } }}

A. Thực hiện sắp xếp danh sách SV theo Tuoi tăng dần bằng thuật toán Insertion
B. Thực hiện sắp xếp danh sách SV theo Tuoi tăng dần bằng thuật toán Selection
C. Thực hiện sắp xếp danh sách SV theo Tuoi giảm dần bằng thuật toán Selection
D. Thực hiện sắp xếp danh sách SV theo Tuoi giảm dần bằng thuật toán Insertion

Câu hỏi 114190:

Cho đoạn mô tả sau:

Bước 1: Khởi đầu tìm kiếm trên tất cả các phần tử của dãy

(left = 0 và right = n - 1)

Bước 2: Tính middle = (left + right)/2. So sánh a[middle] với x. Có 3 khả năng:

a[middle] = x thì thông báo Tìm thấy => Dừng

a[middle] > x thì right = middle - 1

a[middle] < x thì left = middle + 1

Bước 3:

Nếu left <= right và quay lại bước 2 để tìm kiếm tiếp

Ngược lại thông báo không tìm thấy và dừng thuật toán

A. Các đáp án đưa ra đều sai
B. Mô tả thuật toán tìm kiếm tuyến tính
C. Mô tả thuật toán tìm kiếm nhị phân
D. Các đáp án trên đều đúng

Câu hỏi 114191:

Cho thông tin của SV gồm: MaSV, HoTen, Tuoi, DTB

Đâu là đoạn mã để Sắp xếp danh sách SV theo Tuổi tăng dần bằng thuật toán Selection Sort

A. void SXDSV_InsertionSort( int n, SV ds[]){ int pos,i; SV x; for(i=1;i<n;i++) { x = ds[i]; pos = i-1; while((pos>=0)&&(ds[pos].Tuoi<x.Tuoi)) { ds[pos+1] = ds[pos]; pos--; } ds[pos+1] = x; //chèn x vào dãy }}
B. void SXDSV_InsertionSort( int n, SV ds[]){ int pos,i; SV x; for(i=1;i<n;i++) { x = ds[i]; pos = i-1; while((pos>=0)&&(ds[pos].Tuoi>x.Tuoi)) { ds[pos+1] = ds[pos]; pos--; } ds[pos+1] = x; //chèn x vào dãy }}
C. 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; } }}
D. void SXDSSV( int n, SV ds[]){ int max, i, j; SV tg; for( i=0 ; i<n-1 ; i++ ) { max = i; for( j=i+1 ; j<n ; j++ ) if ( ds[j].Tuoi > ds[max].Tuoi) max = j; if(max!= i )
{ tg = ds[max];
ds[max] = ds[i];
ds[i] = tg; } }}

Câu hỏi 114192:

Đoạn mã sau đây thực hiện nhiệm vụ gì

void SXDSV_InsertionSort( int n, SV ds[]){ int pos,i; SV x; for(i=1;i<n;i++) { x = ds[i]; pos = i-1; while((pos>=0)&&(ds[pos].Tuoi>x.Tuoi)) { ds[pos+1] = ds[pos]; pos--; } ds[pos+1] = x; //chèn x vào dãy }}

A. Thực hiện sắp xếp danh sách SV theo Tuoi giảm dần bằng thuật toán Insertion
B. Thực hiện sắp xếp danh sách SV theo Tuoi giảm dần bằng thuật toán Selection
C. Thực hiện sắp xếp danh sách SV theo Tuoi tăng dần bằng thuật toán Insertion
D. Thực hiện sắp xếp danh sách SV theo Tuoi tăng dần bằng thuật toán Selection

Câu hỏi 114193:

Đoạn mã dưới đây mô tả thuật toán gì: B1: k = 1 B2: if M[k] == X and k !=n

B2.1: k++

B2.2: Lặp lại bước 2

B3: if (k<N) thông báo tìm thấy tại vị trí thứ k

B4: else thông báo không tìm thấy

B5: Kết thúc

A. Tìm kiếm tuyến tính phần tử X trong mảng
B. Tìm kiếm nhị phân phần tử có giá trị X
C. Tất cả các lựa chọn trên đều sai
D. Tìm phần tử nhỏ nhất của mảng M gồm N phần tử

Câu hỏi 114196:

Cho đoạn chương trình:

void QuickSort( int a[ ], int L , int R )

{

int i,j,x;

x=……..;

i = L; j = R;

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. a[R/2]
B. a[(L-R)/2]
C. a[(L+R)/2]
D. a[(L+R)]

Câu hỏi 114197:

Hàm mô tả sắp xếp nổi bọt (Bubble Sort) trên mảng M có N phần tử:

1. void BubbleSort(int M[ ], int N)

2. {

3.int i,j,tg;

4.for( i = 0 ; i < N-1 ; i++ )

5.........................................

6.if ( M[j] < M[j-1] )

7.{

8.tg = M[j];

9.M[ j] = M[j-1];

10.M[ j-1] = tg;

11.}

12.}

Lệnh nào sau đây sẽ được đưa vào dòng số [5] của đoạn mã trên

A. for( j = N-1; j>i; j++)
B. Không có dòng lệnh nào phù hợp, không cần thêm thuật toán vẫn chạy đúng
C. for( j = N; j< i; j--)
D. for( j = N-1; j>i; j--)


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 114205:

Cho biết kết quả của đoạn chương trình sau:

int F(int a[], int n)

{

if (n==1)

return a[0];

else

return a[n-1] + F(a,n-1);

}

int main()

{

int a[] = {2, 3, 4, 5, 6};

printf("%d",F(a,5));

getch();

}

A. 14
B. 20
C. 18
D. 2

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.

A. 3 4 6 7 8 2
B. 2 3 4 6 7 8
C. 3 8 7 6 4 2
D. 3 6 7 8 4 2

Câu hỏi 241692:

Cho dãy 10, 5, 7, 3, 9, 2, 15, 1. Dùng thuật toán sắp xếp tăng dần bằng QuickSort, cho biết ở lần duyệt thứ nhất giá trị của x, L và R là gì?

A. L=1; R=7; x=3;
B. L=0; R=7; x=3;
C. L=0; R=8; x=9;
D. L=0; R=8; x=9;

Câu hỏi 241693:

Cho dãy sau: 42, 23, 74, 11, 65, 58. Dùng phương pháp sắp xếp nổi bọt (Bubble Sort) để sắp xếp tăng dần, sau 1 lần lặp kết quả của dãy là thế nào?

A. 11, 42, 23, 74, 58, 65
B. 42, 23, 74, 11, 65, 58
C. 11, 23, 42, 58, 74, 65
D. 11, 23, 42, 58, 65, 74

Câu hỏi 241694:

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 3 lần lặp thì kết quả của dãy là thế nào?

A. 8, 23, 32, 78, 45, 56
B. 8, 23, 32, 78, 56, 45
C. 8, 23, 78, 45, 32, 56
D. 23, 78, 45, 8, 32, 56

Câu hỏi 241695:

Cho dãy sau: 42, 23, 74, 11, 65, 58. Dùng phương pháp sắp xếp nổi bọt (Bubble Sort) để sắp xếp tăng dần, sau 4 lần lặp kết quả của dãy là thế nào?

A. 11, 23, 58, 42, 65, 74
B. 11, 23, 42, 58, 65, 74
C. 11, 23, 58, 42, 74, 65
D. 42, 23, 74, 11, 65, 58

Câu hỏi 241696:

Cho mảng a gồm các phẩn tử có giá trị như sau:

3126

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à:

A. 4
B. 5
C. 3
D. 2

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 563557:

Thuật toán được biểu diễn bằng cách nào

A. Sơ đồ khối
B. Tất cả các cách được liệt kê
C. Giả mã
D. Liệt kê từng bước

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ê

Câu hỏi 563559:

Cho biết kết quả của đoạn chương trình sau:

long f5(int n)

{

if (2*n==2)

return 2;

else

return 2*n + f5(n-1);

}

int main()

{

long x = f5(3);

printf("%ld", x);

getch();

}

A. 12
B. 6
C. 10
D. 2

Câu hỏi 563560:

Để tính biểu thức s = xn với n>=0 ta chọn hàm

A. long F(int x, int n)
{
if (n==1)
return 1;
else
return x*F(x,n-1);
}
B. long F(int x, int n)
{
if (n==0)
return 1;
else
return x*x*F(x,n-1);
}
C. long F(int x, int n)
{
if (n==0)
return 1;
else
return x*F(x,n-1);
}
D. long F(int x, int n)
{
if (n==0)
return 1;
else
return x*F(x,n);
}
Trung tâm giáo dục thể chất và quốc phòng an ninh
Khoa kinh tế
Khoa đào tạo từ xa
Trung tâm đào tạo trực tuyến
Khoa đào tạo cơ bản
Khoa điện - điện tử
Khoa du lịch
Khoa Công nghệ thông tin
Viện Công nghệ sinh học và Công nghệ thực phẩm
Trung tâm đại học Mở Hà Nội tại Đà Nẵng
Khoa tiếng Trung Quốc
Khoa tạo dáng công nghiệp
Khoa tài chính ngân hàng
Khoa Tiếng anh
Khoa Luật

Bản tin HOU-TV số 07 năm 2026

Tuyển sinh đại học Mở Hà Nội - HOU

Rejoining the server...

Rejoin failed... trying again in seconds.

Failed to rejoin.
Please retry or reload the page.

The session has been paused by the server.

Failed to resume the session.
Please retry or reload the page.