JavaScript is required

Thủ tục mô tả thuật toán sắp xếp chọn trực tiếp (Straight Selection Sort):

void SapXepChonTrucTiep(T M[], int N)

{

int K = 0, PosMin;

int Temp;

while (K < N-1)

{ T Min = M[K];

PosMin = K;

for (int Pos = K+1; Pos < N; Pos++)

if (Min > M[Pos])

{

Min = M[Pos];

PosMin = Pos 

}

} ...................................

[1] ...................................

[2] ...................................

[3] K++;

}

return; 

}

Chọn câu lệnh thích hợp để đưa vào [1], [2], [3] với mục tiêu hoán vị M[K] và M[PosMin]

A.

Temp = M[K] ;

Temp = M[PosMin];

M[PosMin] = Temp;

B.

M[K] = Temp;

M[K] = M[PosMin];

M[PosMin] = Temp ;

C.

Temp = M[K] ;

M[PosMin] = M[K];

M[PosMin] = Temp ;

D.

Temp = M[K] ;

M[K] = M[PosMin];

M[PosMin] = Temp ;

Trả lời:

Đáp án đúng: D


Đề bài yêu cầu hoàn thiện đoạn code sắp xếp chọn trực tiếp bằng cách điền vào chỗ trống các câu lệnh hoán đổi giá trị của hai phần tử trong mảng. Thuật toán sắp xếp chọn trực tiếp tìm phần tử nhỏ nhất trong phần còn lại của mảng và hoán đổi nó với phần tử ở vị trí hiện tại. Để hoán đổi hai phần tử M[K] và M[PosMin], ta cần một biến tạm (Temp) để lưu giá trị của M[K], sau đó gán M[PosMin] cho M[K], và cuối cùng gán giá trị của Temp (giá trị ban đầu của M[K]) cho M[PosMin]. Phương án 4 thực hiện đúng các bước này. Các phương án khác sai vì: - Phương án 1 gán M[K] cho Temp, sau đó gán M[PosMin] cho Temp, vậy Temp chỉ giữ giá trị M[PosMin], và sau đó gán Temp cho M[PosMin], do đó M[K] không thay đổi. - Phương án 2 gán M[K] cho Temp, sau đó gán M[PosMin] cho M[K]. Cuối cùng gán Temp cho M[PosMin]. Tuy nhiên, dòng M[K] = Temp; không đúng vì cần phải gán M[K] = M[PosMin]; trước. - Phương án 3 gán M[K] cho Temp, sau đó gán M[K] cho M[PosMin]. Cuối cùng gán Temp cho M[PosMin]. Tuy nhiên, dòng M[PosMin] = M[K]; không đúng vì cần phải gán M[K] = M[PosMin]; trước.

Đề cương ôn thi với 220 câu trắc nghiệm Cấu trúc dữ liệu và giải thuật có đáp án được chọn lọc và chia sẻ dưới đây, nhằm giúp bạn sinh viên hệ thống kiến thức chuẩn bị cho kì thi sắp diễn ra.


50 câu hỏi 60 phút

Câu hỏi liên quan