JavaScript is required
Danh sách đề

220 câu trắc nghiệm Cấu trúc dữ liệu và giải thuật - Phần 2

50 câu hỏi 60 phút

Thẻ ghi nhớ
Luyện tập
Thi thử
Nhấn để lật thẻ
1 / 50

Chọn câu đúng nhất để mô tả thuật toán sắp xếp nổi bọt (Bubble Sort) trên mảng M có N phần tử: 

A.

Đi từ cuối mảng về đầu mảng, trong quá trình đi nếu phần tử ở dưới (đứng phía sau) nhỏ hơn phần tử đứng ngay trên (trước) nó thì hai phần tử này sẽ được đổi chỗ cho nhau. Sau mỗi lần đi chúng ta đưa được một phần tử trồi lên đúng chỗ. Sau N–1 lần đi thì tất cả các phần tử trong mảng M sẽ có thứ tự tăng

B.

Đi từ đầu mảng về cuối mảng, trong quá trình đi nếu phần tử ở dưới (đứng phía sau) nhỏ hơn phần tử đứng ngay trên (trước) nó thì hai phần tử này sẽ được đổi chỗ cho nhau. Sau mỗi lần đi chúng ta đưa được một phần tử trồi lên đúng chỗ. Sau N lần đi thì tất cả các phần tử trong mảng M sẽ có thứ tự tăng

C.

Đi từ cuối mảng về đầu mảng, trong quá trình đi nếu phần tử ở dưới (đứng phía sau) nhỏ hơn phần tử đứng ngay trên (trước) nó thì hai phần tử này sẽ được đổi chỗ cho nhau. Sau mỗi lần đi chúng ta đưa được một phần tử trồi lên đúng chỗ. Sau N lần đi thì tất cả các phần tử trong mảng M sẽ có thứ tự tăng

D.

Cả a, b, c đều sai

Đáp án
Thuật toán sắp xếp nổi bọt (Bubble Sort) hoạt động bằng cách lặp đi lặp lại qua danh sách, so sánh các cặp phần tử liền kề và hoán đổi chúng nếu chúng không đúng thứ tự. Trong mỗi lần lặp, phần tử lớn nhất "nổi" lên vị trí cuối cùng (hoặc đầu tiên, tùy thuộc vào cách triển khai) của danh sách chưa được sắp xếp. Phương án 1 mô tả chính xác cách hoạt động của thuật toán Bubble Sort: đi từ cuối mảng về đầu mảng, so sánh các phần tử liền kề và đổi chỗ nếu cần để đưa phần tử lớn hơn "nổi" lên. Sau N-1 lần lặp, mảng sẽ được sắp xếp. Phương án 2 sai vì Bubble Sort cần N-1 lần lặp, không phải N lần. Phương án 3 sai vì Bubble Sort cần N-1 lần lặp, không phải N lần. Phương án 4 sai vì có một đáp án đúng (phương án 1).

Danh sách câu hỏi:

Câu 1:

Chọn câu đúng nhất để mô tả thuật toán sắp xếp nổi bọt (Bubble Sort) trên mảng M có N phần tử: 

Lời giải:
Đáp án đúng: A
Thuật toán sắp xếp nổi bọt (Bubble Sort) hoạt động bằng cách lặp đi lặp lại qua danh sách, so sánh các cặp phần tử liền kề và hoán đổi chúng nếu chúng không đúng thứ tự. Trong mỗi lần lặp, phần tử lớn nhất "nổi" lên vị trí cuối cùng (hoặc đầu tiên, tùy thuộc vào cách triển khai) của danh sách chưa được sắp xếp. Phương án 1 mô tả chính xác cách hoạt động của thuật toán Bubble Sort: đi từ cuối mảng về đầu mảng, so sánh các phần tử liền kề và đổi chỗ nếu cần để đưa phần tử lớn hơn "nổi" lên. Sau N-1 lần lặp, mảng sẽ được sắp xếp. Phương án 2 sai vì Bubble Sort cần N-1 lần lặp, không phải N lần. Phương án 3 sai vì Bubble Sort cần N-1 lần lặp, không phải N lần. Phương án 4 sai vì có một đáp án đúng (phương án 1).
Lời giải:
Đáp án đúng: C
Đoạn mã B8 trong thuật toán sắp xếp chèn trực tiếp (Straight Insertion Sort) được sử dụng để dời các phần tử đã được sắp xếp trong đoạn từ vị trí Pos đến vị trí K về phía sau một vị trí để tạo khoảng trống cho phần tử X (M[K+1]) được chèn vào đúng vị trí. Biến I được khởi tạo là K+1 và lặp giảm dần đến Pos. Do đó, B8 mô tả trường hợp "Nếu còn phải dời các phần tử từ Pos->K+1 về phía sau 1 vị trí".

Câu 3:

Tìm mô tả đúng cho hàm sau:

int SC (int M[], int Len, int CM[])

{ for (int i = 0; i < Len; i++)

CM[i] = M[i];

return (Len);

}

Lời giải:
Đáp án đúng: D
Hàm `SC` nhận vào một mảng `M`, độ dài `Len`, và một mảng `CM`. Hàm này thực hiện việc sao chép từng phần tử từ mảng `M` sang mảng `CM` trong vòng lặp `for` chạy từ `i = 0` đến `i < Len`. Cuối cùng, hàm trả về giá trị `Len`, là độ dài của mảng `CM` sau khi đã sao chép (hoặc của mảng `M`, vì hai mảng có cùng độ dài). Vì vậy, mô tả đúng nhất là: Hàm thực hiện việc sao chép nội dung mảng `M` có chiều dài `Len` về mảng `CM` có cùng chiều dài. Hàm trả về chiều dài của mảng `CM` sau khi sao chép.
Lời giải:
Đáp án đúng: D
Đề bài yêu cầu chèn một nút mới (NewNode) vào sau một nút cho trước (InsNode) trong danh sách liên kết đơn. Để làm điều này, ta cần thực hiện hai bước chính: 1. **Bước 6:** Thiết lập liên kết từ NewNode đến nút kế tiếp của InsNode. Điều này đảm bảo rằng NewNode sẽ trỏ đến phần còn lại của danh sách sau InsNode. 2. **Bước 7:** Thiết lập liên kết từ InsNode đến NewNode. Điều này đảm bảo rằng InsNode sẽ trỏ đến NewNode, do đó chèn NewNode vào danh sách. Vậy, B6 phải là `NewNode->Link = InsNode->Link` (NewNode trỏ đến nút mà InsNode đang trỏ tới) và B7 phải là `InsNode->Link = NewNode` (InsNode trỏ đến NewNode). Do đó, đáp án đúng là phương án 4.

Câu 5:

Cấu trúc dữ liệu cho kiểu dữ liệu sinh viên như sau:

typedef struct tagSV{

char MSSV[8];

char Ten[30];

char NgaySinh[11];

float DTB;

}SV;

Khai báo

SV sv1, *sv2;

Lựa chọn các câu đúng nhất để gán giá trị cho mã sinh viên của sv1 và sv2:

Lời giải:
Đáp án đúng: B

sv1 là một biến kiểu SV, do đó truy cập vào thành viên của nó (ví dụ MSSV) sử dụng toán tử chấm (.). sv2 là một con trỏ tới kiểu SV, do đó truy cập vào thành viên của nó sử dụng toán tử mũi tên (->). Ngoài ra, MSSV là một mảng các kí tự (string), vì vậy không thể gán trực tiếp bằng dấu = mà cần sử dụng hàm strcpy.

Câu 7:

Định nghĩa cấu trúc dữ liệu của danh sách liên kết đơn được mô tả như sau:

struct Node

{

int Key; Node *

NextNode;

} OneNode;

Trong đó, khai báo Node * NextNode; dùng để mô tả

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 10:

Dấu hiệu nào dưới đây cho biết danh sách liên kết đơn L là rỗng:

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 11:

Danh sách duyệt hậu tự của biểu thức trong câu 3 là:

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 12:

Trong các phát biểu sau, phát biểu nào đúng?

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 16:

Hãy chọn định nghĩa đúng nhất về danh sách kiểu hàng đợi (Queue)?

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 17:

Trong lưu trữ dữ liệu kiểu Queue (Q) dưới dạng mảng nối vòng, giả sử F là con trỏ trỏ tới lối trước của Q, R là con trỏ trỏ tới lối sau của Q. Điều kiện F=R=0 nghĩa là gì trong các phương án sau?

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 20:

Hãy cho biết quy tắc đúng của phép duyệt cây theo thứ tự trước trong các phương án sau?

 

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 21:

Yếu tố nào sau đây để xây dựng nên một chương trình hoàn chỉnh?

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 22:

Hãy cho biết đâu là đặc trưng của thuật toán trong các phương án sau?

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 23:

Với dữ liệu đầu vào (n) đủ nhỏ, ta nên sử dụng phương pháp sắp xếp nào sau đây?

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 24:

Danh sách tuyến tính dạng ngăn xếp làm việc theo nguyên tắc nào sau đây?

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 25:

Hãy cho biết phát biểu nào đúng nhất về Giải thuật đệ quy?

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 27:

Hãy cho biết ý tưởng nào sau đây nói về phương pháp sắp xếp nổi bọt (bubble sort)?

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 28:

Hãy cho biết ý tưởng nào sau đây nói về phương pháp sắp xếp chèn (insertion sort)?

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 29:

Hãy cho biết ý tưởng nào sau đây nói về tưởng phương pháp sắp xếp Trộn (Merge sort)?

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 30:

Hãy cho biết tư tưởng nào sau đây nói về của giải thuật tìm kiếm tuần tự?

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 31:

Trong biểu diễn dữ liệu dưới dạng cây, Khái niệm nào sau đây là cấp của cây?

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 33:

Định nghĩa danh sách tuyến tính Hàng đợi (Queue):

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 38:

Cho dãy số sau: 40 25 75 15 65 55 90 30 95 85. Áp dụng phương pháp sắp xếp lựa chọn, sau lượt 1 dãy sẽ được sắp xếp lại như thế nào?

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 39:

: Tập các toán tử kiểu số nguyên là:

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 40:

Đối với biến con trỏ Hàm MemAvail: Longint : có nghĩa là gì?

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 41:

Đối với biến con trỏ hàm Add (x): Pointer có chức năng gì?

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 42:

Thế nào là sắp xếp trong?

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 43:

Thế nào là sắp xếp ngoài?

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 44:

Bước tổng quát của Phương pháp sắp xếp kiểu nổi bọt (bubble sort)?

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 45:

Thế nào là ngôn ngữ giả?

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 46:

Thời gian chạy của một chuỗi tuần tự áp dụng quy tắc:

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 47:

Trong số các phép toán sau đây, phép toán nào không được dùng đối với mảng:

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 50:

Để dịch chuyển các đĩa từ cọc B sang cọc C với cọc A là trung gian, lệnh gọi hàm nào là đúng?

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP