12+ Đề Trắc Nghiệm Tin Học 11 (Kết Nối Tri Thức) Bài 19: Bài Toán Tìm Kiếm

Đề 01

Đề 02

Đề 03

Đề 04

Đề 05

Đề 06

Đề 07

Đề 08

Đề 09

Đề 10

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm - Đề 01

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm - Đề 01 được xây dựng với nhiều câu hỏi chất lượng, sát với nội dung chương trình học, giúp bạn dễ dàng ôn tập và kiểm tra kiến thức hiệu quả. Hãy cùng bắt đầu làm bài tập trắc nghiệm ngay để nâng cao hiểu biết và chuẩn bị tốt cho kỳ thi sắp tới!

Câu 1: Mục đích chính của các thuật toán sắp xếp là gì?

  • A. Xóa bỏ các phần tử trùng lặp khỏi danh sách.
  • B. Sắp xếp các phần tử trong danh sách theo một thứ tự xác định.
  • C. Tìm kiếm một phần tử cụ thể trong danh sách.
  • D. Thêm các phần tử mới vào danh sách.

Câu 2: Xét thuật toán sắp xếp nổi bọt (Bubble Sort). Trong mỗi lần duyệt (pass) qua danh sách, thuật toán thực hiện công việc gì?

  • A. Tìm phần tử nhỏ nhất trong phần chưa sắp xếp và đặt vào đúng vị trí.
  • B. Chèn một phần tử vào vị trí thích hợp trong phần đã sắp xếp.
  • C. So sánh và hoán đổi các cặp phần tử kề nhau để đưa phần tử lớn nhất (hoặc nhỏ nhất) về cuối phần chưa sắp xếp.
  • D. Chia danh sách thành hai nửa và sắp xếp từng nửa.

Câu 3: Cho dãy số [5, 1, 4, 2, 8]. Áp dụng thuật toán sắp xếp nổi bọt (tăng dần). Dãy số sẽ trông như thế nào sau lần duyệt đầu tiên (first pass)?

  • A. [1, 4, 2, 5, 8]
  • B. [1, 2, 4, 5, 8]
  • C. [5, 1, 4, 2, 8]
  • D. [1, 5, 4, 2, 8]

Câu 4: Xét thuật toán sắp xếp chọn (Selection Sort). Trong mỗi lần duyệt (pass) qua phần chưa sắp xếp, thuật toán thực hiện công việc gì?

  • A. So sánh và hoán đổi các cặp phần tử kề nhau.
  • B. Chèn phần tử đầu tiên của phần chưa sắp xếp vào vị trí thích hợp trong phần đã sắp xếp.
  • C. Chia danh sách thành hai nửa.
  • D. Tìm phần tử nhỏ nhất (hoặc lớn nhất) trong phần chưa sắp xếp và hoán đổi nó với phần tử đầu tiên của phần chưa sắp xếp.

Câu 5: Cho dãy số [5, 1, 4, 2, 8]. Áp dụng thuật toán sắp xếp chọn (tăng dần). Dãy số sẽ trông như thế nào sau lần duyệt đầu tiên (first pass)?

  • A. [1, 2, 4, 5, 8]
  • B. [1, 4, 2, 5, 8]
  • C. [1, 5, 4, 2, 8]
  • D. [5, 1, 4, 2, 8]

Câu 6: So sánh thuật toán sắp xếp nổi bọt và sắp xếp chọn trên một danh sách có n phần tử. Nhận định nào sau đây đúng về số lượng phép hoán đổi (swap) trong trường hợp xấu nhất?

  • A. Sắp xếp nổi bọt luôn thực hiện ít phép hoán đổi hơn.
  • B. Sắp xếp chọn thường thực hiện ít phép hoán đổi hơn đáng kể so với sắp xếp nổi bọt.
  • C. Số lượng phép hoán đổi của hai thuật toán là như nhau.
  • D. Sắp xếp chọn thực hiện nhiều phép hoán đổi hơn đáng kể so với sắp xếp nổi bọt.

Câu 7: Thuật toán sắp xếp chèn (Insertion Sort) hoạt động dựa trên ý tưởng chính nào?

  • A. Xây dựng danh sách đã sắp xếp bằng cách chèn từng phần tử vào vị trí đúng trong phần đã sắp xếp.
  • B. Tìm phần tử nhỏ nhất và hoán đổi nó với phần tử đầu tiên.
  • C. So sánh các cặp phần tử kề nhau và hoán đổi nếu cần.
  • D. Chia danh sách thành các danh sách con nhỏ hơn.

Câu 8: Cho dãy số [5, 1, 4, 2, 8]. Áp dụng thuật toán sắp xếp chèn (tăng dần). Dãy số sẽ trông như thế nào sau khi xử lý xong phần tử thứ 3 (giá trị 4)? (Coi phần tử đầu tiên [5] đã là phần đã sắp xếp ban đầu).

  • A. [1, 5, 4, 2, 8]
  • B. [1, 4, 5, 2, 8]
  • C. [1, 2, 4, 5, 8]
  • D. [5, 1, 4, 2, 8]

Câu 9: Thuật toán sắp xếp nào sau đây được xem là hiệu quả nhất trong ba thuật toán đơn giản (Nổi bọt, Chọn, Chèn) khi danh sách đầu vào gần như đã được sắp xếp?

  • A. Sắp xếp nổi bọt.
  • B. Sắp xếp chọn.
  • C. Sắp xếp chèn.
  • D. Cả ba đều có hiệu suất như nhau trong trường hợp này.

Câu 10: Độ phức tạp thời gian (Time Complexity) của các thuật toán sắp xếp đơn giản (Nổi bọt, Chọn, Chèn) trong trường hợp xấu nhất thường là bao nhiêu với n là số lượng phần tử?

  • A. O(n)
  • B. O(n log n)
  • C. O(log n)
  • D. O(n^2)

Câu 11: Thuật toán sắp xếp nào có đặc điểm là số lượng phép hoán đổi (swap) luôn không vượt quá số lượng phần tử (n-1), bất kể dữ liệu đầu vào như thế nào?

  • A. Sắp xếp nổi bọt.
  • B. Sắp xếp chọn.
  • C. Sắp xếp chèn.
  • D. Cả ba thuật toán.

Câu 12: Khi nào thì nên cân nhắc sử dụng một trong các thuật toán sắp xếp đơn giản (Nổi bọt, Chọn, Chèn) thay vì các thuật toán phức tạp hơn như Merge Sort hay Quick Sort?

  • A. Khi kích thước danh sách cần sắp xếp rất nhỏ.
  • B. Khi hiệu suất là yếu tố quan trọng nhất.
  • C. Khi danh sách chứa rất nhiều phần tử trùng lặp.
  • D. Khi danh sách đã được sắp xếp ngược thứ tự.

Câu 13: Một thuật toán sắp xếp được mô tả như sau: "Lặp lại việc duyệt qua danh sách, so sánh từng cặp phần tử kề nhau và hoán đổi nếu chúng sai thứ tự. Quá trình này lặp lại cho đến khi không còn cặp nào cần hoán đổi." Mô tả này ứng với thuật toán sắp xếp nào?

  • A. Sắp xếp nổi bọt (Bubble Sort).
  • B. Sắp xếp chọn (Selection Sort).
  • C. Sắp xếp chèn (Insertion Sort).
  • D. Sắp xếp nhanh (Quick Sort).

Câu 14: Cho dãy số [3, 1, 4, 1, 5, 9, 2, 6]. Áp dụng sắp xếp chọn (tăng dần). Phần tử nào sẽ nằm ở vị trí đầu tiên sau khi hoàn thành pass thứ 2?

  • A. 1
  • B. 2
  • C. 3
  • D. 4

Câu 15: Xét thuật toán sắp xếp chèn. Sau k bước lặp chính (xử lý xong k phần tử đầu tiên của phần chưa sắp xếp), phần k+1 phần tử đầu tiên của danh sách ban đầu sẽ có đặc điểm gì?

  • A. Phần k+1 phần tử đầu tiên là tập hợp k+1 phần tử nhỏ nhất của toàn bộ danh sách, đã được sắp xếp.
  • B. Phần k+1 phần tử đầu tiên là tập hợp k+1 phần tử đầu tiên của danh sách ban đầu, nhưng chưa chắc đã sắp xếp.
  • C. Phần k+1 phần tử đầu tiên là tập hợp k+1 phần tử lớn nhất của toàn bộ danh sách, đã được sắp xếp.
  • D. Phần k+1 phần tử đầu tiên là tập hợp k+1 phần tử đầu tiên của danh sách ban đầu, và chúng đã được sắp xếp.

Câu 16: Trong thuật toán sắp xếp nổi bọt, làm thế nào để biết khi nào toàn bộ danh sách đã được sắp xếp và có thể dừng thuật toán sớm?

  • A. Khi số lần duyệt đạt đến n-1.
  • B. Khi trong một lần duyệt, không có cặp phần tử nào bị hoán đổi.
  • C. Khi phần tử cuối cùng của danh sách đã đúng vị trí.
  • D. Khi phần tử đầu tiên của danh sách đã đúng vị trí.

Câu 17: Giả sử bạn cần sắp xếp một danh sách liên kết (linked list). Thuật toán sắp xếp đơn giản nào sau đây có thể gặp khó khăn hoặc kém hiệu quả hơn đáng kể so với mảng (array) do cấu trúc dữ liệu?

  • A. Sắp xếp chèn (Insertion Sort).
  • B. Sắp xếp chọn (Selection Sort).
  • C. Sắp xếp nổi bọt (Bubble Sort).
  • D. Cả ba đều gặp khó khăn như nhau.

Câu 18: Cho dãy số [7, 3, 5, 8, 2]. Áp dụng sắp xếp chèn (tăng dần). Dãy số sẽ trông như thế nào sau khi xử lý xong phần tử có giá trị 8?

  • A. [2, 3, 5, 7, 8]
  • B. [3, 5, 7, 2, 8]
  • C. [3, 5, 2, 7, 8]
  • D. [3, 5, 7, 8, 2]

Câu 19: Nhận định nào sau đây là SAI khi nói về thuật toán sắp xếp chọn (Selection Sort)?

  • A. Số lượng phép hoán đổi luôn là n-1.
  • B. Trong mỗi lần duyệt, thuật toán tìm phần tử nhỏ nhất trong phần chưa sắp xếp.
  • C. Hiệu suất của thuật toán thay đổi đáng kể tùy thuộc vào việc danh sách đầu vào đã sắp xếp hay chưa.
  • D. Độ phức tạp thời gian trong trường hợp xấu nhất là O(n^2).

Câu 20: Trong bối cảnh lập trình, việc cài đặt thuật toán sắp xếp chèn (Insertion Sort) thường sử dụng cấu trúc lặp lồng nhau. Vòng lặp ngoài thường dùng để làm gì?

  • A. Duyệt qua các phần tử từ phần chưa sắp xếp để chọn ra phần tử cần chèn.
  • B. Tìm vị trí thích hợp để chèn phần tử vào phần đã sắp xếp.
  • C. Thực hiện việc dịch chuyển các phần tử trong phần đã sắp xếp.
  • D. Đếm số lần hoán đổi đã thực hiện.

Câu 21: Thuật toán sắp xếp nào sau đây có thể dừng sớm nếu danh sách đầu vào đã được sắp xếp hoàn toàn ngay từ đầu?

  • A. Sắp xếp nổi bọt (với cờ kiểm tra hoán đổi).
  • B. Sắp xếp chọn.
  • C. Cả sắp xếp chọn và sắp xếp chèn.
  • D. Không có thuật toán đơn giản nào có thể dừng sớm.

Câu 22: Cho dãy số [6, 5, 4, 3, 2, 1]. Đây là trường hợp xấu nhất cho thuật toán sắp xếp nào trong ba thuật toán đơn giản xét về số lượng phép so sánh hoặc hoán đổi?

  • A. Sắp xếp chọn.
  • B. Sắp xếp chèn.
  • C. Sắp xếp nổi bọt.
  • D. Đây là trường hợp xấu nhất (hoặc gần xấu nhất) cho cả ba thuật toán.

Câu 23: Khi sắp xếp một danh sách các đối tượng phức tạp (ví dụ: đối tượng SinhVien với nhiều thuộc tính), yếu tố nào sau đây của thuật toán sắp xếp đơn giản trở nên quan trọng cần cân nhắc?

  • A. Số lượng phép so sánh.
  • B. Số lượng phép hoán đổi.
  • C. Độ phức tạp không gian bộ nhớ.
  • D. Khả năng dừng sớm.

Câu 24: Thuật toán sắp xếp nào sau đây được mô tả là "ổn định" (stable), nghĩa là nó giữ nguyên thứ tự tương đối của các phần tử có giá trị bằng nhau?

  • A. Sắp xếp chọn.
  • B. Chỉ sắp xếp nổi bọt.
  • C. Sắp xếp nổi bọt và sắp xếp chèn.
  • D. Không có thuật toán đơn giản nào ổn định.

Câu 25: Áp dụng sắp xếp nổi bọt (tăng dần) cho dãy [4, 2, 1, 3]. Số lượng phép hoán đổi (swap) tối thiểu cần thực hiện để dãy được sắp xếp là bao nhiêu?

  • A. 3
  • B. 4
  • C. 5
  • D. 6

Câu 26: Áp dụng sắp xếp chọn (tăng dần) cho dãy [4, 2, 1, 3]. Số lượng phép hoán đổi (swap) cần thực hiện là bao nhiêu?

  • A. 2
  • B. 3
  • C. 4
  • D. 6

Câu 27: Áp dụng sắp xếp chèn (tăng dần) cho dãy [4, 2, 1, 3]. Dãy số sẽ trông như thế nào sau khi xử lý xong phần tử có giá trị 1?

  • A. [2, 4, 1, 3]
  • B. [4, 2, 1, 3]
  • C. [1, 2, 4, 3]
  • D. [1, 2, 3, 4]

Câu 28: Nhận định nào sau đây là đúng nhất về ưu điểm của thuật toán sắp xếp nổi bọt (Bubble Sort)?

  • A. Luôn có hiệu suất tốt nhất trong trường hợp trung bình.
  • B. Số lượng phép hoán đổi luôn tối thiểu.
  • C. Hiệu quả với danh sách có kích thước lớn.
  • D. Đơn giản và dễ cài đặt.

Câu 29: Khi cần sắp xếp một danh sách rất lớn và hiệu suất là yếu tố quan trọng hàng đầu, các thuật toán đơn giản O(n^2) thường không được ưu tiên. Thay vào đó, người ta thường sử dụng các thuật toán có độ phức tạp thời gian nào?

  • A. O(n^3)
  • B. O(n log n)
  • C. O(log n)
  • D. O(n)

Câu 30: Giả sử bạn cần sắp xếp một tệp dữ liệu rất lớn không thể chứa hết trong bộ nhớ RAM (external sorting). Thuật toán sắp xếp đơn giản nào sau đây sẽ gặp khó khăn lớn nhất khi triển khai trong tình huống này?

  • A. Sắp xếp nổi bọt.
  • B. Sắp xếp chọn.
  • C. Sắp xếp chèn.
  • D. Cả ba thuật toán đơn giản đều không hiệu quả cho external sorting.

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 01

Câu 1: Mục đích chính của các thuật toán sắp xếp là gì?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 01

Câu 2: Xét thuật toán sắp xếp nổi bọt (Bubble Sort). Trong mỗi lần duyệt (pass) qua danh sách, thuật toán thực hiện công việc gì?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 01

Câu 3: Cho dãy số [5, 1, 4, 2, 8]. Áp dụng thuật toán sắp xếp nổi bọt (tăng dần). Dãy số sẽ trông như thế nào sau *lần duyệt đầu tiên* (first pass)?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 01

Câu 4: Xét thuật toán sắp xếp chọn (Selection Sort). Trong mỗi lần duyệt (pass) qua phần chưa sắp xếp, thuật toán thực hiện công việc gì?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 01

Câu 5: Cho dãy số [5, 1, 4, 2, 8]. Áp dụng thuật toán sắp xếp chọn (tăng dần). Dãy số sẽ trông như thế nào sau *lần duyệt đầu tiên* (first pass)?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 01

Câu 6: So sánh thuật toán sắp xếp nổi bọt và sắp xếp chọn trên một danh sách có n phần tử. Nhận định nào sau đây đúng về số lượng phép hoán đổi (swap) trong trường hợp xấu nhất?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 01

Câu 7: Thuật toán sắp xếp chèn (Insertion Sort) hoạt động dựa trên ý tưởng chính nào?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 01

Câu 8: Cho dãy số [5, 1, 4, 2, 8]. Áp dụng thuật toán sắp xếp chèn (tăng dần). Dãy số sẽ trông như thế nào sau khi xử lý xong phần tử thứ 3 (giá trị 4)? (Coi phần tử đầu tiên [5] đã là phần đã sắp xếp ban đầu).

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 01

Câu 9: Thuật toán sắp xếp nào sau đây được xem là hiệu quả nhất trong ba thuật toán đơn giản (Nổi bọt, Chọn, Chèn) khi danh sách đầu vào *gần như đã được sắp xếp*?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 01

Câu 10: Độ phức tạp thời gian (Time Complexity) của các thuật toán sắp xếp đơn giản (Nổi bọt, Chọn, Chèn) trong trường hợp xấu nhất thường là bao nhiêu với n là số lượng phần tử?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 01

Câu 11: Thuật toán sắp xếp nào có đặc điểm là số lượng phép hoán đổi (swap) luôn không vượt quá số lượng phần tử (n-1), bất kể dữ liệu đầu vào như thế nào?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 01

Câu 12: Khi nào thì nên cân nhắc sử dụng một trong các thuật toán sắp xếp đơn giản (Nổi bọt, Chọn, Chèn) thay vì các thuật toán phức tạp hơn như Merge Sort hay Quick Sort?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 01

Câu 13: Một thuật toán sắp xếp được mô tả như sau: 'Lặp lại việc duyệt qua danh sách, so sánh từng cặp phần tử kề nhau và hoán đổi nếu chúng sai thứ tự. Quá trình này lặp lại cho đến khi không còn cặp nào cần hoán đổi.' Mô tả này ứng với thuật toán sắp xếp nào?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 01

Câu 14: Cho dãy số [3, 1, 4, 1, 5, 9, 2, 6]. Áp dụng sắp xếp chọn (tăng dần). Phần tử nào sẽ nằm ở vị trí đầu tiên sau khi hoàn thành *pass thứ 2*?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 01

Câu 15: Xét thuật toán sắp xếp chèn. Sau k bước lặp chính (xử lý xong k phần tử đầu tiên của phần chưa sắp xếp), phần k+1 phần tử đầu tiên của danh sách ban đầu sẽ có đặc điểm gì?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 01

Câu 16: Trong thuật toán sắp xếp nổi bọt, làm thế nào để biết khi nào toàn bộ danh sách đã được sắp xếp và có thể dừng thuật toán sớm?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 01

Câu 17: Giả sử bạn cần sắp xếp một danh sách liên kết (linked list). Thuật toán sắp xếp đơn giản nào sau đây có thể gặp khó khăn hoặc kém hiệu quả hơn đáng kể so với mảng (array) do cấu trúc dữ liệu?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 01

Câu 18: Cho dãy số [7, 3, 5, 8, 2]. Áp dụng sắp xếp chèn (tăng dần). Dãy số sẽ trông như thế nào sau khi xử lý xong phần tử có giá trị 8?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 01

Câu 19: Nhận định nào sau đây là SAI khi nói về thuật toán sắp xếp chọn (Selection Sort)?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 01

Câu 20: Trong bối cảnh lập trình, việc cài đặt thuật toán sắp xếp chèn (Insertion Sort) thường sử dụng cấu trúc lặp lồng nhau. Vòng lặp ngoài thường dùng để làm gì?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 01

Câu 21: Thuật toán sắp xếp nào sau đây có thể dừng sớm nếu danh sách đầu vào đã được sắp xếp hoàn toàn ngay từ đầu?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 01

Câu 22: Cho dãy số [6, 5, 4, 3, 2, 1]. Đây là trường hợp xấu nhất cho thuật toán sắp xếp nào trong ba thuật toán đơn giản xét về số lượng phép so sánh hoặc hoán đổi?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 01

Câu 23: Khi sắp xếp một danh sách các đối tượng phức tạp (ví dụ: đối tượng SinhVien với nhiều thuộc tính), yếu tố nào sau đây của thuật toán sắp xếp đơn giản trở nên quan trọng cần cân nhắc?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 01

Câu 24: Thuật toán sắp xếp nào sau đây được mô tả là 'ổn định' (stable), nghĩa là nó giữ nguyên thứ tự tương đối của các phần tử có giá trị bằng nhau?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 01

Câu 25: Áp dụng sắp xếp nổi bọt (tăng dần) cho dãy [4, 2, 1, 3]. Số lượng phép hoán đổi (swap) tối thiểu cần thực hiện để dãy được sắp xếp là bao nhiêu?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 01

Câu 26: Áp dụng sắp xếp chọn (tăng dần) cho dãy [4, 2, 1, 3]. Số lượng phép hoán đổi (swap) cần thực hiện là bao nhiêu?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 01

Câu 27: Áp dụng sắp xếp chèn (tăng dần) cho dãy [4, 2, 1, 3]. Dãy số sẽ trông như thế nào sau khi xử lý xong phần tử có giá trị 1?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 01

Câu 28: Nhận định nào sau đây là đúng nhất về ưu điểm của thuật toán sắp xếp nổi bọt (Bubble Sort)?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 01

Câu 29: Khi cần sắp xếp một danh sách rất lớn và hiệu suất là yếu tố quan trọng hàng đầu, các thuật toán đơn giản O(n^2) thường không được ưu tiên. Thay vào đó, người ta thường sử dụng các thuật toán có độ phức tạp thời gian nào?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 01

Câu 30: Giả sử bạn cần sắp xếp một tệp dữ liệu rất lớn không thể chứa hết trong bộ nhớ RAM (external sorting). Thuật toán sắp xếp đơn giản nào sau đây sẽ gặp khó khăn lớn nhất khi triển khai trong tình huống này?

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm - Đề 02

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm - Đề 02 được xây dựng với nhiều câu hỏi chất lượng, sát với nội dung chương trình học, giúp bạn dễ dàng ôn tập và kiểm tra kiến thức hiệu quả. Hãy cùng bắt đầu làm bài tập trắc nghiệm ngay để nâng cao hiểu biết và chuẩn bị tốt cho kỳ thi sắp tới!

Câu 1: Bài toán sắp xếp là gì?

  • A. Tìm kiếm một phần tử trong danh sách.
  • B. Sắp xếp các phần tử trong danh sách theo một thứ tự nhất định.
  • C. Xóa một phần tử khỏi danh sách.
  • D. Thêm một phần tử vào danh sách.

Câu 2: Thuật toán Sắp xếp chọn (Selection Sort) hoạt động theo nguyên tắc nào?

  • A. So sánh các phần tử kề nhau và đổi chỗ nếu sai thứ tự.
  • B. Chèn từng phần tử vào đúng vị trí trong phần đã sắp xếp.
  • C. Tìm phần tử nhỏ nhất (hoặc lớn nhất) trong phần chưa sắp xếp và đổi chỗ với phần tử đầu tiên của phần chưa sắp xếp.
  • D. Chia danh sách thành hai nửa và sắp xếp từng nửa.

Câu 3: Cho dãy số A = [5, 2, 8, 1, 9]. Áp dụng thuật toán Sắp xếp chọn theo thứ tự tăng dần. Dãy A sẽ như thế nào sau lần duyệt (pass) đầu tiên?

  • A. [2, 5, 8, 1, 9]
  • B. [1, 2, 8, 5, 9]
  • C. [5, 2, 8, 1, 9]
  • D. [1, 2, 8, 5, 9]

Câu 4: Thuật toán Sắp xếp nổi bọt (Bubble Sort) hoạt động theo nguyên tắc nào?

  • A. So sánh các phần tử kề nhau và đổi chỗ nếu sai thứ tự, lặp lại cho đến khi danh sách được sắp xếp.
  • B. Tìm phần tử nhỏ nhất trong phần chưa sắp xếp và đổi chỗ với phần tử đầu tiên của phần chưa sắp xếp.
  • C. Chèn từng phần tử vào đúng vị trí trong phần đã sắp xếp.
  • D. Chia danh sách thành hai nửa và sắp xếp từng nửa.

Câu 5: Cho dãy số B = [6, 1, 4, 3, 2]. Áp dụng thuật toán Sắp xếp nổi bọt theo thứ tự tăng dần. Dãy B sẽ như thế nào sau lần duyệt (pass) đầu tiên?

  • A. [1, 2, 3, 4, 6]
  • B. [1, 4, 3, 2, 6]
  • C. [1, 4, 3, 2, 6]
  • D. [6, 1, 4, 3, 2]

Câu 6: Thuật toán Sắp xếp chèn (Insertion Sort) hoạt động theo nguyên tắc nào?

  • A. So sánh các phần tử kề nhau và đổi chỗ nếu sai thứ tự.
  • B. Chèn từng phần tử vào đúng vị trí trong phần đã sắp xếp được xây dựng từ trái sang phải.
  • C. Tìm phần tử nhỏ nhất trong phần chưa sắp xếp và đổi chỗ với phần tử đầu tiên của phần chưa sắp xếp.
  • D. Chia danh sách thành hai nửa và sắp xếp từng nửa.

Câu 7: Cho dãy số C = [7, 3, 5, 1, 4]. Áp dụng thuật toán Sắp xếp chèn theo thứ tự tăng dần. Dãy C sẽ như thế nào sau khi xử lý xong phần tử có giá trị bằng 5 (tức là sau khi chèn 3 và 5 vào phần đã sắp xếp)?

  • A. [3, 5, 7, 1, 4]
  • B. [3, 7, 5, 1, 4]
  • C. [1, 3, 5, 7, 4]
  • D. [7, 3, 5, 1, 4]

Câu 8: Đối với dãy có n phần tử, thuật toán Sắp xếp chọn (Selection Sort) cần bao nhiêu lượt so sánh trong trường hợp xấu nhất (worst case)?

  • A. O(n)
  • B. O(n log n)
  • C. O(n^2)
  • D. O(log n)

Câu 9: Thuật toán Sắp xếp nổi bọt (Bubble Sort) có thể dừng sớm nếu trong một lượt duyệt (pass) không có bất kỳ cặp phần tử nào được đổi chỗ. Điều này xảy ra khi nào?

  • A. Khi danh sách rỗng.
  • B. Khi chỉ còn một phần tử trong danh sách.
  • C. Khi tất cả các phần tử đều có giá trị giống nhau.
  • D. Khi danh sách đã được sắp xếp hoàn toàn.

Câu 10: Trong trường hợp tốt nhất (best case), thuật toán Sắp xếp chèn (Insertion Sort) có độ phức tạp thời gian là bao nhiêu và xảy ra khi nào?

  • A. O(n^2) khi danh sách đã sắp xếp.
  • B. O(n) khi danh sách đã sắp xếp.
  • C. O(n log n) khi danh sách ngược thứ tự.
  • D. O(1) khi danh sách chỉ có 2 phần tử.

Câu 11: Thuật toán sắp xếp nào trong các thuật toán đơn giản (Selection, Bubble, Insertion) có số lần đổi chỗ (swap) luôn cố định là n-1 đối với dãy có n phần tử?

  • A. Sắp xếp chọn (Selection Sort)
  • B. Sắp xếp nổi bọt (Bubble Sort)
  • C. Sắp xếp chèn (Insertion Sort)
  • D. Cả ba thuật toán đều có số lần đổi chỗ thay đổi tùy theo dữ liệu đầu vào.

Câu 12: Khi nào thì nên cân nhắc sử dụng thuật toán Sắp xếp chèn (Insertion Sort) thay vì Sắp xếp chọn hoặc Sắp xếp nổi bọt?

  • A. Khi danh sách có kích thước rất lớn.
  • B. Khi cần đảm bảo số lần so sánh là cố định.
  • C. Khi danh sách hoàn toàn ngược thứ tự.
  • D. Khi danh sách có kích thước nhỏ hoặc đã gần như được sắp xếp.

Câu 13: Cho dãy số D = [4, 1, 3, 2]. Áp dụng thuật toán Sắp xếp chèn theo thứ tự tăng dần. Dãy D sẽ như thế nào sau khi hoàn thành bước chèn phần tử thứ 3 (giá trị 3)?

  • A. [1, 4, 3, 2]
  • B. [1, 3, 4, 2]
  • C. [1, 2, 3, 4]
  • D. [4, 1, 3, 2]

Câu 14: Độ phức tạp thời gian của các thuật toán sắp xếp đơn giản (Selection, Bubble, Insertion) trong trường hợp xấu nhất đều là O(n^2). Điều này có ý nghĩa gì khi xử lý các danh sách có kích thước rất lớn?

  • A. Các thuật toán này rất hiệu quả với danh sách lớn.
  • B. Thời gian thực thi tăng tuyến tính với kích thước danh sách.
  • C. Thời gian thực thi tăng rất nhanh khi kích thước danh sách lớn, khiến chúng không hiệu quả.
  • D. Số lần đổi chỗ không đáng kể với danh sách lớn.

Câu 15: Giả sử bạn đang triển khai một ứng dụng cần sắp xếp dữ liệu "trực tuyến" (online), nghĩa là các phần tử mới được thêm vào danh sách cần sắp xếp liên tục. Thuật toán đơn giản nào phù hợp nhất cho việc này?

  • A. Sắp xếp chọn (Selection Sort)
  • B. Sắp xếp nổi bọt (Bubble Sort)
  • C. Sắp xếp chèn (Insertion Sort)
  • D. Cả ba thuật toán đều không phù hợp.

Câu 16: Đặc điểm nào sau đây KHÔNG phải là ưu điểm của các thuật toán sắp xếp đơn giản (Selection, Bubble, Insertion)?

  • A. Dễ hiểu và dễ cài đặt.
  • B. Yêu cầu ít bộ nhớ phụ (O(1) không gian).
  • C. Phù hợp với danh sách nhỏ hoặc gần sắp xếp (đối với Insertion Sort).
  • D. Tốc độ xử lý nhanh đối với danh sách có kích thước lớn.

Câu 17: Cho dãy số E = [9, 8, 7, 6, 5]. Áp dụng thuật toán Sắp xếp nổi bọt theo thứ tự tăng dần. Có bao nhiêu lần đổi chỗ (swap) được thực hiện trong lần duyệt (pass) đầu tiên?

  • A. 4
  • B. 3
  • C. 5
  • D. 0

Câu 18: Trong Sắp xếp chèn (Insertion Sort), phần nào của danh sách được coi là "đã sắp xếp" sau mỗi bước lặp chính?

  • A. Phần tử cuối cùng của danh sách.
  • B. Phần đầu của danh sách, bao gồm các phần tử đã được chèn vào đúng vị trí.
  • C. Toàn bộ danh sách.
  • D. Phần tử nhỏ nhất tìm được trong mỗi bước.

Câu 19: Cho dãy số F = [10, 20, 30, 40, 50]. Áp dụng thuật toán Sắp xếp nổi bọt theo thứ tự tăng dần. Có bao nhiêu lần đổi chỗ (swap) được thực hiện trong toàn bộ quá trình sắp xếp?

  • A. 0
  • B. N-1
  • C. N*(N-1)/2
  • D. Thay đổi tùy theo cách triển khai

Câu 20: Thuật toán sắp xếp nào trong các thuật toán đơn giản có số lần so sánh là cố định O(n^2) bất kể dữ liệu đầu vào là gì?

  • A. Sắp xếp chọn (Selection Sort)
  • B. Sắp xếp nổi bọt (Bubble Sort)
  • C. Sắp xếp chèn (Insertion Sort)
  • D. Cả ba thuật toán.

Câu 21: Cho dãy số G = [3, 1, 4, 1, 5, 9, 2, 6]. Áp dụng Sắp xếp chọn theo thứ tự tăng dần. Dãy G sẽ như thế nào sau khi hoàn thành hai lần duyệt (pass) đầu tiên?

  • A. [1, 3, 4, 1, 5, 9, 2, 6]
  • B. [1, 1, 3, 4, 5, 9, 2, 6]
  • C. [1, 1, 4, 3, 5, 9, 2, 6]
  • D. [1, 1, 4, 3, 5, 9, 2, 6]

Câu 22: Thuật toán nào trong các thuật toán đơn giản được mô tả bằng các bước sau: "Lặp từ phần tử thứ hai đến hết danh sách. Với mỗi phần tử, so sánh nó với các phần tử trong phần đã sắp xếp ở phía trước và chèn nó vào đúng vị trí bằng cách dịch chuyển các phần tử lớn hơn sang phải."

  • A. Sắp xếp chọn (Selection Sort)
  • B. Sắp xếp nổi bọt (Bubble Sort)
  • C. Sắp xếp chèn (Insertion Sort)
  • D. Không phải thuật toán nào trong số này.

Câu 23: Cho dãy số H = [2, 1, 4, 3]. Áp dụng Sắp xếp nổi bọt theo thứ tự tăng dần. Dãy H sẽ như thế nào sau khi hoàn thành lần duyệt (pass) thứ hai?

  • A. [1, 2, 3, 4]
  • B. [1, 2, 4, 3]
  • C. [2, 1, 4, 3]
  • D. [1, 3, 2, 4]

Câu 24: Thuật toán sắp xếp nào được gọi là "stable" (ổn định) nếu nó duy trì thứ tự tương đối của các phần tử có giá trị bằng nhau?

  • A. Sắp xếp chọn (Selection Sort)
  • B. Sắp xếp nhanh (Quick Sort)
  • C. Sắp xếp chèn (Insertion Sort)
  • D. Sắp xếp trộn (Merge Sort)

Câu 25: Một giáo viên yêu cầu học sinh sắp xếp một chồng bài kiểm tra theo điểm từ thấp đến cao. Chồng bài kiểm tra chỉ có 15 bài. Thuật toán đơn giản nào có thể là lựa chọn hợp lý nhất về mặt hiệu quả và dễ hiểu?

  • A. Sắp xếp hợp nhất (Merge Sort)
  • B. Sắp xếp nhanh (Quick Sort)
  • C. Sắp xếp chèn (Insertion Sort)
  • D. Sắp xếp đếm (Counting Sort)

Câu 26: Thuật toán sắp xếp đơn giản nào có số lần đổi chỗ (swap) có thể lên tới O(n^2) trong trường hợp xấu nhất (ví dụ: dãy ngược thứ tự)?

  • A. Sắp xếp chọn (Selection Sort)
  • B. Sắp xếp nổi bọt (Bubble Sort)
  • C. Sắp xếp chèn (Insertion Sort)
  • D. Tất cả các thuật toán trên.

Câu 27: Cho dãy số I = [8, 4, 6, 2]. Áp dụng Sắp xếp chèn theo thứ tự tăng dần. Dãy I sẽ như thế nào sau khi hoàn thành bước chèn phần tử thứ 4 (giá trị 2)?

  • A. [4, 6, 8, 2]
  • B. [2, 8, 4, 6]
  • C. [4, 2, 6, 8]
  • D. [2, 4, 6, 8]

Câu 28: Tại sao Sắp xếp chọn (Selection Sort) lại có số lần đổi chỗ ít hơn đáng kể so với Sắp xếp nổi bọt (Bubble Sort) trong trường hợp xấu nhất?

  • A. Vì nó sử dụng kỹ thuật chia để trị.
  • B. Vì nó chỉ thực hiện 1 lần đổi chỗ cho mỗi lần duyệt để đưa phần tử nhỏ nhất/lớn nhất về đúng vị trí.
  • C. Vì nó chỉ so sánh các phần tử kề nhau.
  • D. Vì nó chèn từng phần tử vào đúng vị trí.

Câu 29: Xem xét ba thuật toán Sắp xếp chọn, Sắp xếp nổi bọt và Sắp xếp chèn. Thuật toán nào có thể dừng sớm nhất nếu danh sách đầu vào đã được sắp xếp?

  • A. Sắp xếp chọn (Selection Sort)
  • B. Sắp xếp nổi bọt (Bubble Sort)
  • C. Sắp xếp chèn (Insertion Sort)
  • D. Sắp xếp nổi bọt (với cờ hiệu) và Sắp xếp chèn.

Câu 30: Một nhà phát triển cần chọn một thuật toán sắp xếp đơn giản cho một hệ thống nhúng với bộ nhớ rất hạn chế. Yếu tố "in-place" (sắp xếp tại chỗ, không dùng bộ nhớ phụ đáng kể) là rất quan trọng. Thuật toán nào trong số các thuật toán đơn giản đáp ứng yêu cầu này?

  • A. Sắp xếp chọn (Selection Sort) và Sắp xếp nổi bọt (Bubble Sort)
  • B. Sắp xếp chèn (Insertion Sort) và Sắp xếp hợp nhất (Merge Sort)
  • C. Chỉ có Sắp xếp chọn (Selection Sort)
  • D. Cả Sắp xếp chọn, Sắp xếp nổi bọt và Sắp xếp chèn.

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 02

Câu 1: Bài toán sắp xếp là gì?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 02

Câu 2: Thuật toán Sắp xếp chọn (Selection Sort) hoạt động theo nguyên tắc nào?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 02

Câu 3: Cho dãy số A = [5, 2, 8, 1, 9]. Áp dụng thuật toán Sắp xếp chọn theo thứ tự tăng dần. Dãy A sẽ như thế nào sau *lần duyệt (pass) đầu tiên*?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 02

Câu 4: Thuật toán Sắp xếp nổi bọt (Bubble Sort) hoạt động theo nguyên tắc nào?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 02

Câu 5: Cho dãy số B = [6, 1, 4, 3, 2]. Áp dụng thuật toán Sắp xếp nổi bọt theo thứ tự tăng dần. Dãy B sẽ như thế nào sau *lần duyệt (pass) đầu tiên*?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 02

Câu 6: Thuật toán Sắp xếp chèn (Insertion Sort) hoạt động theo nguyên tắc nào?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 02

Câu 7: Cho dãy số C = [7, 3, 5, 1, 4]. Áp dụng thuật toán Sắp xếp chèn theo thứ tự tăng dần. Dãy C sẽ như thế nào sau khi xử lý xong phần tử có giá trị bằng 5 (tức là sau khi chèn 3 và 5 vào phần đã sắp xếp)?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 02

Câu 8: Đối với dãy có n phần tử, thuật toán Sắp xếp chọn (Selection Sort) cần bao nhiêu lượt so sánh trong trường hợp xấu nhất (worst case)?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 02

Câu 9: Thuật toán Sắp xếp nổi bọt (Bubble Sort) có thể dừng sớm nếu trong một lượt duyệt (pass) không có bất kỳ cặp phần tử nào được đổi chỗ. Điều này xảy ra khi nào?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 02

Câu 10: Trong trường hợp tốt nhất (best case), thuật toán Sắp xếp chèn (Insertion Sort) có độ phức tạp thời gian là bao nhiêu và xảy ra khi nào?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 02

Câu 11: Thuật toán sắp xếp nào trong các thuật toán đơn giản (Selection, Bubble, Insertion) có số lần đổi chỗ (swap) luôn cố định là n-1 đối với dãy có n phần tử?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 02

Câu 12: Khi nào thì nên cân nhắc sử dụng thuật toán Sắp xếp chèn (Insertion Sort) thay vì Sắp xếp chọn hoặc Sắp xếp nổi bọt?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 02

Câu 13: Cho dãy số D = [4, 1, 3, 2]. Áp dụng thuật toán Sắp xếp chèn theo thứ tự tăng dần. Dãy D sẽ như thế nào sau khi hoàn thành *bước chèn phần tử thứ 3* (giá trị 3)?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 02

Câu 14: Độ phức tạp thời gian của các thuật toán sắp xếp đơn giản (Selection, Bubble, Insertion) trong trường hợp xấu nhất đều là O(n^2). Điều này có ý nghĩa gì khi xử lý các danh sách có kích thước rất lớn?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 02

Câu 15: Giả sử bạn đang triển khai một ứng dụng cần sắp xếp dữ liệu 'trực tuyến' (online), nghĩa là các phần tử mới được thêm vào danh sách cần sắp xếp liên tục. Thuật toán đơn giản nào phù hợp nhất cho việc này?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 02

Câu 16: Đặc điểm nào sau đây KHÔNG phải là ưu điểm của các thuật toán sắp xếp đơn giản (Selection, Bubble, Insertion)?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 02

Câu 17: Cho dãy số E = [9, 8, 7, 6, 5]. Áp dụng thuật toán Sắp xếp nổi bọt theo thứ tự tăng dần. Có bao nhiêu lần đổi chỗ (swap) được thực hiện trong *lần duyệt (pass) đầu tiên*?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 02

Câu 18: Trong Sắp xếp chèn (Insertion Sort), phần nào của danh sách được coi là 'đã sắp xếp' sau mỗi bước lặp chính?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 02

Câu 19: Cho dãy số F = [10, 20, 30, 40, 50]. Áp dụng thuật toán Sắp xếp nổi bọt theo thứ tự tăng dần. Có bao nhiêu lần đổi chỗ (swap) được thực hiện trong *toàn bộ quá trình* sắp xếp?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 02

Câu 20: Thuật toán sắp xếp nào trong các thuật toán đơn giản có số lần so sánh là cố định O(n^2) bất kể dữ liệu đầu vào là gì?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 02

Câu 21: Cho dãy số G = [3, 1, 4, 1, 5, 9, 2, 6]. Áp dụng Sắp xếp chọn theo thứ tự tăng dần. Dãy G sẽ như thế nào sau khi hoàn thành *hai lần duyệt (pass)* đầu tiên?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 02

Câu 22: Thuật toán nào trong các thuật toán đơn giản được mô tả bằng các bước sau: 'Lặp từ phần tử thứ hai đến hết danh sách. Với mỗi phần tử, so sánh nó với các phần tử trong phần đã sắp xếp ở phía trước và chèn nó vào đúng vị trí bằng cách dịch chuyển các phần tử lớn hơn sang phải.'

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 02

Câu 23: Cho dãy số H = [2, 1, 4, 3]. Áp dụng Sắp xếp nổi bọt theo thứ tự tăng dần. Dãy H sẽ như thế nào sau khi hoàn thành *lần duyệt (pass) thứ hai*?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 02

Câu 24: Thuật toán sắp xếp nào được gọi là 'stable' (ổn định) nếu nó duy trì thứ tự tương đối của các phần tử có giá trị bằng nhau?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 02

Câu 25: Một giáo viên yêu cầu học sinh sắp xếp một chồng bài kiểm tra theo điểm từ thấp đến cao. Chồng bài kiểm tra chỉ có 15 bài. Thuật toán đơn giản nào có thể là lựa chọn hợp lý nhất về mặt hiệu quả và dễ hiểu?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 02

Câu 26: Thuật toán sắp xếp đơn giản nào có số lần đổi chỗ (swap) có thể lên tới O(n^2) trong trường hợp xấu nhất (ví dụ: dãy ngược thứ tự)?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 02

Câu 27: Cho dãy số I = [8, 4, 6, 2]. Áp dụng Sắp xếp chèn theo thứ tự tăng dần. Dãy I sẽ như thế nào sau khi hoàn thành *bước chèn phần tử thứ 4* (giá trị 2)?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 02

Câu 28: Tại sao Sắp xếp chọn (Selection Sort) lại có số lần đổi chỗ ít hơn đáng kể so với Sắp xếp nổi bọt (Bubble Sort) trong trường hợp xấu nhất?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 02

Câu 29: Xem xét ba thuật toán Sắp xếp chọn, Sắp xếp nổi bọt và Sắp xếp chèn. Thuật toán nào có thể dừng sớm nhất nếu danh sách đầu vào đã được sắp xếp?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 02

Câu 30: Một nhà phát triển cần chọn một thuật toán sắp xếp đơn giản cho một hệ thống nhúng với bộ nhớ rất hạn chế. Yếu tố 'in-place' (sắp xếp tại chỗ, không dùng bộ nhớ phụ đáng kể) là rất quan trọng. Thuật toán nào trong số các thuật toán đơn giản đáp ứng yêu cầu này?

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm - Đề 03

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm - Đề 03 được xây dựng với nhiều câu hỏi chất lượng, sát với nội dung chương trình học, giúp bạn dễ dàng ôn tập và kiểm tra kiến thức hiệu quả. Hãy cùng bắt đầu làm bài tập trắc nghiệm ngay để nâng cao hiểu biết và chuẩn bị tốt cho kỳ thi sắp tới!

Câu 1: Bài toán sắp xếp (Sorting Problem) trong Tin học có mục tiêu chính là gì?

  • A. Sắp xếp các phần tử của một dãy dữ liệu theo một thứ tự nhất định (tăng dần hoặc giảm dần).
  • B. Tìm kiếm một phần tử cụ thể trong một dãy dữ liệu.
  • C. Thêm hoặc bớt các phần tử vào một dãy dữ liệu.
  • D. Kết hợp hai hoặc nhiều dãy dữ liệu thành một.

Câu 2: Thuật toán Sắp xếp nổi bọt (Bubble Sort) hoạt động dựa trên nguyên tắc cơ bản nào?

  • A. Tìm phần tử nhỏ nhất (hoặc lớn nhất) trong phần chưa sắp xếp và đưa nó về đúng vị trí.
  • B. Chia dãy thành hai nửa, sắp xếp từng nửa rồi trộn lại.
  • C. So sánh và hoán đổi vị trí các cặp phần tử liền kề nếu chúng không đúng thứ tự.
  • D. Lấy từng phần tử từ dãy ban đầu và chèn vào đúng vị trí trong phần đã sắp xếp.

Câu 3: Cho dãy số A = [5, 1, 4, 2, 8]. Sau khi thực hiện **một lượt (pass)** đầu tiên của thuật toán Sắp xếp nổi bọt (Bubble Sort) theo thứ tự tăng dần, dãy A sẽ trở thành như thế nào?

  • A. [1, 2, 4, 5, 8]
  • B. [1, 5, 4, 2, 8]
  • C. [5, 1, 4, 2, 8]
  • D. [1, 4, 2, 5, 8]

Câu 4: Thuật toán Sắp xếp chọn (Selection Sort) hoạt động dựa trên nguyên tắc cơ bản nào?

  • A. Tìm phần tử nhỏ nhất (hoặc lớn nhất) trong phần chưa sắp xếp và hoán đổi nó với phần tử ở vị trí đầu tiên của phần chưa sắp xếp.
  • B. So sánh và hoán đổi vị trí các cặp phần tử liền kề nếu chúng không đúng thứ tự.
  • C. Lấy từng phần tử từ dãy ban đầu và chèn vào đúng vị trí trong phần đã sắp xếp.
  • D. Chia dãy thành hai nửa, sắp xếp từng nửa rồi trộn lại.

Câu 5: Cho dãy số B = [6, 2, 8, 3, 1]. Sau khi thực hiện **hai lượt (pass)** đầu tiên của thuật toán Sắp xếp chọn (Selection Sort) theo thứ tự tăng dần, dãy B sẽ trở thành như thế nào?

  • A. [1, 2, 3, 6, 8]
  • B. [1, 2, 8, 3, 6]
  • C. [1, 6, 8, 3, 2]
  • D. [6, 2, 8, 3, 1]

Câu 6: Thuật toán Sắp xếp chèn (Insertion Sort) hoạt động dựa trên nguyên tắc cơ bản nào?

  • A. Chia dãy thành hai nửa, sắp xếp từng nửa rồi trộn lại.
  • B. Tìm phần tử nhỏ nhất (hoặc lớn nhất) trong phần chưa sắp xếp và đưa nó về đúng vị trí.
  • C. So sánh và hoán đổi vị trí các cặp phần tử liền kề nếu chúng không đúng thứ tự.
  • D. Xây dựng dãy đã sắp xếp bằng cách lần lượt chèn từng phần tử của dãy ban đầu vào đúng vị trí của nó trong phần đã sắp xếp.

Câu 7: Cho dãy số C = [7, 3, 5, 8, 4]. Sau khi thực hiện **bước chèn phần tử thứ 3** (với phần tử thứ nhất và thứ hai đã được xem như phần đã sắp xếp ban đầu) của thuật toán Sắp xếp chèn (Insertion Sort) theo thứ tự tăng dần, dãy C sẽ trở thành như thế nào?

  • A. [3, 5, 4, 7, 8]
  • B. [3, 7, 5, 8, 4]
  • C. [3, 5, 7, 8, 4]
  • D. [7, 3, 5, 8, 4]

Câu 8: Xét độ phức tạp thời gian trong trường hợp xấu nhất (Worst Case) của các thuật toán sắp xếp đơn giản (Bubble Sort, Selection Sort, Insertion Sort) với N phần tử. Độ phức tạp này thường được biểu diễn bằng ký hiệu Big O là gì?

  • A. O(N^2)
  • B. O(N log N)
  • C. O(N)
  • D. O(log N)

Câu 9: Tại sao các thuật toán sắp xếp đơn giản (như Bubble Sort, Selection Sort, Insertion Sort) lại không hiệu quả cho các tập dữ liệu rất lớn?

  • A. Chúng yêu cầu quá nhiều bộ nhớ phụ.
  • B. Số lượng phép so sánh và hoán đổi tăng rất nhanh (theo bình phương) khi số lượng phần tử lớn.
  • C. Chúng chỉ hoạt động trên các kiểu dữ liệu số.
  • D. Chúng cần dữ liệu phải được sắp xếp trước khi bắt đầu.

Câu 10: Trong trường hợp tốt nhất (Best Case) của thuật toán Sắp xếp chèn (Insertion Sort) theo thứ tự tăng dần (khi dãy đã được sắp xếp tăng dần), số lượng phép so sánh gần đúng là bao nhiêu với N phần tử?

  • A. O(N^2)
  • B. O(N log N)
  • C. O(N)
  • D. O(1)

Câu 11: So sánh giữa Sắp xếp nổi bọt (Bubble Sort) và Sắp xếp chọn (Selection Sort) trên một dãy có N phần tử. Thuật toán nào có xu hướng thực hiện ít phép hoán đổi (swap) hơn trong trường hợp trung bình và xấu nhất?

  • A. Sắp xếp nổi bọt (Bubble Sort)
  • B. Sắp xếp chọn (Selection Sort)
  • C. Cả hai đều thực hiện số lượng hoán đổi tương đương.
  • D. Không thể so sánh được.

Câu 12: Thuật toán sắp xếp đơn giản nào có thể hiệu quả nhất (về số phép so sánh) trong trường hợp dãy đầu vào đã được sắp xếp gần hoàn toàn?

  • A. Sắp xếp nổi bọt (Bubble Sort)
  • B. Sắp xếp chọn (Selection Sort)
  • C. Sắp xếp chèn (Insertion Sort)
  • D. Cả ba đều có hiệu quả như nhau trong trường hợp này.

Câu 13: Xét dãy số D = [4, 1, 3, 2]. Theo dõi thuật toán Sắp xếp chèn (Insertion Sort) theo thứ tự tăng dần. Sau khi phần tử có giá trị 2 được chèn vào đúng vị trí, dãy D sẽ như thế nào?

  • A. [1, 2, 3, 4]
  • B. [1, 3, 2, 4]
  • C. [4, 1, 3, 2]
  • D. [1, 4, 3, 2]

Câu 14: Cho dãy số E = [9, 7, 5, 3, 1]. Khi áp dụng thuật toán Sắp xếp chọn (Selection Sort) theo thứ tự tăng dần, sau lượt thứ nhất, phần tử nào chắc chắn đã ở đúng vị trí cuối cùng của nó trong dãy đã sắp xếp?

  • A. Phần tử nhỏ nhất của dãy ban đầu.
  • B. Phần tử ở vị trí cuối cùng của dãy ban đầu.
  • C. Phần tử ở vị trí đầu tiên của dãy ban đầu.
  • D. Không có phần tử nào chắc chắn ở đúng vị trí cuối cùng của nó sau lượt thứ nhất, trừ khi đó là phần tử nhỏ nhất và nó ở vị trí 0 ngay từ đầu.

Câu 15: Thuật toán sắp xếp nào trong ba thuật toán đơn giản (Bubble, Selection, Insertion) thường được coi là dễ cài đặt nhất cho người mới bắt đầu học?

  • A. Sắp xếp nổi bọt (Bubble Sort)
  • B. Sắp xếp chèn (Insertion Sort)
  • C. Sắp xếp chọn (Selection Sort)
  • D. Độ khó cài đặt là như nhau.

Câu 16: Xét thuật toán Sắp xếp nổi bọt (Bubble Sort) trên dãy A = [1, 2, 3, 4, 5] (đã sắp xếp tăng dần). Hỏi cần bao nhiêu phép so sánh và bao nhiêu phép hoán đổi để thuật toán kết thúc nếu nó có cơ chế kiểm tra xem có hoán đổi nào xảy ra trong một lượt không?

  • A. (N-1)*N/2 phép so sánh, 0 hoán đổi.
  • B. N-1 phép so sánh, 0 hoán đổi.
  • C. (N-1)N/2 phép so sánh, (N-1)N/2 hoán đổi.
  • D. N-1 phép so sánh, N-1 hoán đổi.

Câu 17: Cho dãy số F = [10, 20, 30, 40, 50]. Khi áp dụng thuật toán Sắp xếp chọn (Selection Sort) theo thứ tự tăng dần, số lượng phép hoán đổi sẽ là bao nhiêu?

  • A. 0
  • B. N/2
  • C. N-1
  • D. N*(N-1)/2

Câu 18: Một dãy số được sắp xếp bằng một trong ba thuật toán đơn giản. Sau một số bước, dãy có dạng [1, 3, 5, 8, 2, 4, 6]. Dựa vào cấu trúc "phần đã sắp xếp" và "phần chưa sắp xếp", có thể suy đoán dãy này đang được sắp xếp bằng thuật toán nào?

  • A. Sắp xếp chèn (Insertion Sort)
  • B. Sắp xếp nổi bọt (Bubble Sort)
  • C. Sắp xếp chọn (Selection Sort)
  • D. Không thể xác định chỉ với thông tin này.

Câu 19: Cho dãy số G = [7, 1, 5, 12, 3, 8]. Theo dõi thuật toán Sắp xếp nổi bọt (Bubble Sort) theo thứ tự tăng dần. Sau khi phần tử có giá trị 12 được "nổi bọt" đến đúng vị trí cuối cùng của nó, dãy G sẽ như thế nào?

  • A. [1, 3, 5, 7, 8, 12]
  • B. [1, 5, 3, 7, 8, 12]
  • C. [1, 5, 7, 8, 3, 12]
  • D. [1, 5, 7, 3, 8, 12]

Câu 20: Khi nào thì thuật toán Sắp xếp chọn (Selection Sort) và Sắp xếp nổi bọt (Bubble Sort) có cùng độ phức tạp thời gian trong trường hợp tốt nhất (Best Case)?

  • A. Khi dãy đã được sắp xếp tăng dần.
  • B. Khi dãy được sắp xếp ngược lại (giảm dần).
  • C. Khi tất cả các phần tử trong dãy đều bằng nhau.
  • D. Không bao giờ có cùng độ phức tạp thời gian trong trường hợp tốt nhất.

Câu 21: Thuật toán sắp xếp nào trong ba thuật toán đơn giản có tính chất là sau mỗi lượt (pass), một phần tử chắc chắn đã được đưa về đúng vị trí cuối cùng của nó trong dãy đã sắp xếp?

  • A. Sắp xếp nổi bọt (Bubble Sort)
  • B. Sắp xếp chèn (Insertion Sort)
  • C. Sắp xếp chọn (Selection Sort)
  • D. Cả ba thuật toán đều có tính chất này.

Câu 22: Cho dãy số H = [8, 4, 6, 2]. Theo dõi thuật toán Sắp xếp chọn (Selection Sort) theo thứ tự tăng dần. Sau khi kết thúc lượt thứ 2, dãy H sẽ như thế nào?

  • A. [2, 4, 6, 8]
  • B. [2, 8, 6, 4]
  • C. [2, 4, 8, 6]
  • D. [8, 4, 6, 2]

Câu 23: So sánh Sắp xếp nổi bọt (Bubble Sort) và Sắp xếp chèn (Insertion Sort) về số lượng phép hoán đổi. Thuật toán nào có thể thực hiện ít phép hoán đổi hơn trong trường hợp trung bình?

  • A. Sắp xếp nổi bọt (Bubble Sort)
  • B. Sắp xếp chèn (Insertion Sort)
  • C. Cả hai đều thực hiện số lượng hoán đổi tương đương.
  • D. Không thể so sánh được.

Câu 24: Một lập trình viên cần chọn một thuật toán sắp xếp đơn giản để sắp xếp một danh sách rất nhỏ (ví dụ, dưới 20 phần tử) trong một ứng dụng nhúng có bộ nhớ hạn chế. Thuật toán nào trong ba thuật toán đơn giản có thể là lựa chọn hợp lý nhất, xét về sự đơn giản và hiệu quả trên dữ liệu nhỏ?

  • A. Sắp xếp nổi bọt (Bubble Sort)
  • B. Sắp xếp chọn (Selection Sort)
  • C. Sắp xếp chèn (Insertion Sort)
  • D. Cả ba đều phù hợp như nhau.

Câu 25: Cho dãy số I = [5, 3, 1]. Theo dõi thuật toán Sắp xếp nổi bọt (Bubble Sort) theo thứ tự tăng dần. Cần bao nhiêu phép so sánh để dãy được sắp xếp hoàn toàn?

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

Câu 26: Cho dãy số J = [5, 3, 1]. Theo dõi thuật toán Sắp xếp chọn (Selection Sort) theo thứ tự tăng dần. Cần bao nhiêu phép hoán đổi để dãy được sắp xếp hoàn toàn?

  • A. 0
  • B. 1
  • C. 2
  • D. 3

Câu 27: Cho dãy số K = [5, 3, 1]. Theo dõi thuật toán Sắp xếp chèn (Insertion Sort) theo thứ tự tăng dần. Cần bao nhiêu phép so sánh để dãy được sắp xếp hoàn toàn?

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

Câu 28: Thuật toán sắp xếp nào có thể được mô tả là "chia dãy thành hai phần: một phần đã sắp xếp và một phần chưa sắp xếp, và lần lượt đưa phần tử từ phần chưa sắp xếp sang phần đã sắp xếp sao cho nó vẫn giữ được tính thứ tự"?

  • A. Sắp xếp nổi bọt (Bubble Sort)
  • B. Sắp xếp chọn (Selection Sort)
  • C. Sắp xếp chèn (Insertion Sort)
  • D. Cả ba thuật toán.

Câu 29: Xét một dãy số có N phần tử. Trong trường hợp xấu nhất, thuật toán Sắp xếp chọn (Selection Sort) sẽ thực hiện khoảng bao nhiêu phép so sánh?

  • A. N
  • B. N log N
  • C. N-1
  • D. N*(N-1)/2

Câu 30: Đặc điểm nào sau đây là điểm chung của cả ba thuật toán sắp xếp đơn giản (Bubble Sort, Selection Sort, Insertion Sort) khi nói về yêu cầu bộ nhớ?

  • A. Chúng đều là các thuật toán "tại chỗ" (in-place) và chỉ cần một lượng bộ nhớ phụ cố định.
  • B. Chúng đều yêu cầu một mảng phụ có kích thước bằng mảng ban đầu.
  • C. Yêu cầu bộ nhớ của chúng phụ thuộc tuyến tính vào số lượng phần tử (O(N)).
  • D. Chúng yêu cầu bộ nhớ phụ theo cấp logarit (O(log N)).

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 03

Câu 1: Bài toán sắp xếp (Sorting Problem) trong Tin học có mục tiêu chính là gì?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 03

Câu 2: Thuật toán Sắp xếp nổi bọt (Bubble Sort) hoạt động dựa trên nguyên tắc cơ bản nào?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 03

Câu 3: Cho dãy số A = [5, 1, 4, 2, 8]. Sau khi thực hiện **một lượt (pass)** đầu tiên của thuật toán Sắp xếp nổi bọt (Bubble Sort) theo thứ tự tăng dần, dãy A sẽ trở thành như thế nào?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 03

Câu 4: Thuật toán Sắp xếp chọn (Selection Sort) hoạt động dựa trên nguyên tắc cơ bản nào?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 03

Câu 5: Cho dãy số B = [6, 2, 8, 3, 1]. Sau khi thực hiện **hai lượt (pass)** đầu tiên của thuật toán Sắp xếp chọn (Selection Sort) theo thứ tự tăng dần, dãy B sẽ trở thành như thế nào?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 03

Câu 6: Thuật toán Sắp xếp chèn (Insertion Sort) hoạt động dựa trên nguyên tắc cơ bản nào?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 03

Câu 7: Cho dãy số C = [7, 3, 5, 8, 4]. Sau khi thực hiện **bước chèn phần tử thứ 3** (với phần tử thứ nhất và thứ hai đã được xem như phần đã sắp xếp ban đầu) của thuật toán Sắp xếp chèn (Insertion Sort) theo thứ tự tăng dần, dãy C sẽ trở thành như thế nào?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 03

Câu 8: Xét độ phức tạp thời gian trong trường hợp xấu nhất (Worst Case) của các thuật toán sắp xếp đơn giản (Bubble Sort, Selection Sort, Insertion Sort) với N phần tử. Độ phức tạp này thường được biểu diễn bằng ký hiệu Big O là gì?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 03

Câu 9: Tại sao các thuật toán sắp xếp đơn giản (như Bubble Sort, Selection Sort, Insertion Sort) lại không hiệu quả cho các tập dữ liệu rất lớn?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 03

Câu 10: Trong trường hợp tốt nhất (Best Case) của thuật toán Sắp xếp chèn (Insertion Sort) theo thứ tự tăng dần (khi dãy đã được sắp xếp tăng dần), số lượng phép so sánh gần đúng là bao nhiêu với N phần tử?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 03

Câu 11: So sánh giữa Sắp xếp nổi bọt (Bubble Sort) và Sắp xếp chọn (Selection Sort) trên một dãy có N phần tử. Thuật toán nào có xu hướng thực hiện ít phép hoán đổi (swap) hơn trong trường hợp trung bình và xấu nhất?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 03

Câu 12: Thuật toán sắp xếp đơn giản nào có thể hiệu quả nhất (về số phép so sánh) trong trường hợp dãy đầu vào đã được sắp xếp gần hoàn toàn?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 03

Câu 13: Xét dãy số D = [4, 1, 3, 2]. Theo dõi thuật toán Sắp xếp chèn (Insertion Sort) theo thứ tự tăng dần. Sau khi phần tử có giá trị 2 được chèn vào đúng vị trí, dãy D sẽ như thế nào?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 03

Câu 14: Cho dãy số E = [9, 7, 5, 3, 1]. Khi áp dụng thuật toán Sắp xếp chọn (Selection Sort) theo thứ tự tăng dần, sau lượt thứ nhất, phần tử nào chắc chắn đã ở đúng vị trí cuối cùng của nó trong dãy đã sắp xếp?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 03

Câu 15: Thuật toán sắp xếp nào trong ba thuật toán đơn giản (Bubble, Selection, Insertion) thường được coi là dễ cài đặt nhất cho người mới bắt đầu học?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 03

Câu 16: Xét thuật toán Sắp xếp nổi bọt (Bubble Sort) trên dãy A = [1, 2, 3, 4, 5] (đã sắp xếp tăng dần). Hỏi cần bao nhiêu phép so sánh và bao nhiêu phép hoán đổi để thuật toán kết thúc nếu nó có cơ chế kiểm tra xem có hoán đổi nào xảy ra trong một lượt không?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 03

Câu 17: Cho dãy số F = [10, 20, 30, 40, 50]. Khi áp dụng thuật toán Sắp xếp chọn (Selection Sort) theo thứ tự tăng dần, số lượng phép hoán đổi sẽ là bao nhiêu?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 03

Câu 18: Một dãy số được sắp xếp bằng một trong ba thuật toán đơn giản. Sau một số bước, dãy có dạng [1, 3, 5, 8, 2, 4, 6]. Dựa vào cấu trúc 'phần đã sắp xếp' và 'phần chưa sắp xếp', có thể suy đoán dãy này đang được sắp xếp bằng thuật toán nào?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 03

Câu 19: Cho dãy số G = [7, 1, 5, 12, 3, 8]. Theo dõi thuật toán Sắp xếp nổi bọt (Bubble Sort) theo thứ tự tăng dần. Sau khi phần tử có giá trị 12 được 'nổi bọt' đến đúng vị trí cuối cùng của nó, dãy G sẽ như thế nào?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 03

Câu 20: Khi nào thì thuật toán Sắp xếp chọn (Selection Sort) và Sắp xếp nổi bọt (Bubble Sort) có cùng độ phức tạp thời gian trong trường hợp tốt nhất (Best Case)?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 03

Câu 21: Thuật toán sắp xếp nào trong ba thuật toán đơn giản có tính chất là sau mỗi lượt (pass), một phần tử *chắc chắn* đã được đưa về đúng vị trí cuối cùng của nó trong dãy đã sắp xếp?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 03

Câu 22: Cho dãy số H = [8, 4, 6, 2]. Theo dõi thuật toán Sắp xếp chọn (Selection Sort) theo thứ tự tăng dần. Sau khi kết thúc lượt thứ 2, dãy H sẽ như thế nào?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 03

Câu 23: So sánh Sắp xếp nổi bọt (Bubble Sort) và Sắp xếp chèn (Insertion Sort) về số lượng phép hoán đổi. Thuật toán nào có thể thực hiện ít phép hoán đổi hơn trong trường hợp trung bình?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 03

Câu 24: Một lập trình viên cần chọn một thuật toán sắp xếp đơn giản để sắp xếp một danh sách rất nhỏ (ví dụ, dưới 20 phần tử) trong một ứng dụng nhúng có bộ nhớ hạn chế. Thuật toán nào trong ba thuật toán đơn giản có thể là lựa chọn hợp lý nhất, xét về sự đơn giản và hiệu quả trên dữ liệu nhỏ?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 03

Câu 25: Cho dãy số I = [5, 3, 1]. Theo dõi thuật toán Sắp xếp nổi bọt (Bubble Sort) theo thứ tự tăng dần. Cần bao nhiêu phép so sánh để dãy được sắp xếp hoàn toàn?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 03

Câu 26: Cho dãy số J = [5, 3, 1]. Theo dõi thuật toán Sắp xếp chọn (Selection Sort) theo thứ tự tăng dần. Cần bao nhiêu phép hoán đổi để dãy được sắp xếp hoàn toàn?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 03

Câu 27: Cho dãy số K = [5, 3, 1]. Theo dõi thuật toán Sắp xếp chèn (Insertion Sort) theo thứ tự tăng dần. Cần bao nhiêu phép so sánh để dãy được sắp xếp hoàn toàn?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 03

Câu 28: Thuật toán sắp xếp nào có thể được mô tả là 'chia dãy thành hai phần: một phần đã sắp xếp và một phần chưa sắp xếp, và lần lượt đưa phần tử từ phần chưa sắp xếp sang phần đã sắp xếp sao cho nó vẫn giữ được tính thứ tự'?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 03

Câu 29: Xét một dãy số có N phần tử. Trong trường hợp xấu nhất, thuật toán Sắp xếp chọn (Selection Sort) sẽ thực hiện khoảng bao nhiêu phép so sánh?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 03

Câu 30: Đặc điểm nào sau đây là điểm chung của cả ba thuật toán sắp xếp đơn giản (Bubble Sort, Selection Sort, Insertion Sort) khi nói về yêu cầu bộ nhớ?

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm - Đề 04

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm - Đề 04 được xây dựng với nhiều câu hỏi chất lượng, sát với nội dung chương trình học, giúp bạn dễ dàng ôn tập và kiểm tra kiến thức hiệu quả. Hãy cùng bắt đầu làm bài tập trắc nghiệm ngay để nâng cao hiểu biết và chuẩn bị tốt cho kỳ thi sắp tới!

Câu 1: Khi bạn sử dụng công cụ tìm kiếm trên một website thương mại điện tử để tìm một sản phẩm cụ thể (ví dụ: "điện thoại Samsung Galaxy S23"), "miền dữ liệu" của bài toán tìm kiếm này là gì?

  • A. Chỉ các từ khóa bạn gõ vào ô tìm kiếm.
  • B. Toàn bộ danh mục sản phẩm và thông tin liên quan có trên website.
  • C. Các kết quả tìm kiếm được hiển thị trên màn hình.
  • D. Tất cả các website bán hàng trên internet.

Câu 2: Thuật toán tìm kiếm tuần tự (Sequential Search) hoạt động dựa trên nguyên tắc cơ bản nào?

  • A. Chia đôi danh sách và tìm kiếm trong một nửa.
  • B. Sắp xếp danh sách trước khi tìm kiếm.
  • C. Duyệt qua từng phần tử của danh sách theo thứ tự.
  • D. So sánh phần tử cần tìm với phần tử ở giữa danh sách.

Câu 3: Cho dãy số A = [4, 12, 7, 25, 18, 31, 9]. Nếu bạn tìm kiếm giá trị K = 18 bằng thuật toán tìm kiếm tuần tự, bạn sẽ cần duyệt qua bao nhiêu phần tử trước khi tìm thấy K?

  • A. 3
  • B. 4
  • C. 6
  • D. 5

Câu 4: Trong trường hợp nào, thuật toán tìm kiếm tuần tự đạt hiệu suất tốt nhất (số bước duyệt ít nhất)?

  • A. Phần tử cần tìm là phần tử đầu tiên của dãy.
  • B. Phần tử cần tìm là phần tử cuối cùng của dãy.
  • C. Phần tử cần tìm không tồn tại trong dãy.
  • D. Dãy dữ liệu có kích thước nhỏ.

Câu 5: Thuật toán tìm kiếm nhị phân (Binary Search) chỉ có thể áp dụng trực tiếp một cách hiệu quả khi dữ liệu đầu vào có đặc điểm gì?

  • A. Dữ liệu có kích thước nhỏ.
  • B. Dữ liệu chứa các số nguyên dương.
  • C. Dữ liệu đã được sắp xếp theo một thứ tự.
  • D. Dữ liệu không chứa các phần tử trùng lặp.

Câu 6: Cho dãy số đã sắp xếp tăng dần A = [10, 20, 30, 40, 50, 60, 70, 80, 90]. Bạn cần tìm giá trị K = 70 bằng thuật toán tìm kiếm nhị phân. Giá trị của phần tử được kiểm tra ở bước **thứ hai** là bao nhiêu?

  • A. 30
  • B. 50
  • C. 60
  • D. 70

Câu 7: Với một dãy số đã sắp xếp có N phần tử, số bước duyệt tối đa (trong trường hợp xấu nhất) của thuật toán tìm kiếm nhị phân xấp xỉ là bao nhiêu?

  • A. N
  • B. log₂(N)
  • C. N/2
  • D. N * log₂(N)

Câu 8: Bạn có một tệp văn bản chứa hàng triệu dòng dữ liệu, mỗi dòng là một giao dịch bán hàng. Các giao dịch này được lưu trữ theo thứ tự thời gian (không sắp xếp theo bất kỳ trường nào khác). Bạn cần tìm tất cả các giao dịch của một khách hàng cụ thể dựa trên ID khách hàng. Thuật toán tìm kiếm nào phù hợp nhất để thực hiện công việc này?

  • A. Tìm kiếm tuần tự.
  • B. Tìm kiếm nhị phân (vì dữ liệu lớn).
  • C. Cần phải sắp xếp lại dữ liệu theo ID khách hàng rồi mới tìm.
  • D. Cả hai thuật toán đều không phù hợp.

Câu 9: So sánh tốc độ giữa tìm kiếm tuần tự và tìm kiếm nhị phân trên một dãy dữ liệu rất lớn (ví dụ 1 tỷ phần tử) đã được sắp xếp. Nhận định nào sau đây là đúng nhất?

  • A. Tìm kiếm tuần tự nhanh hơn tìm kiếm nhị phân vì nó đơn giản hơn.
  • B. Tìm kiếm nhị phân nhanh hơn đáng kể so với tìm kiếm tuần tự.
  • C. Tốc độ của cả hai thuật toán là tương đương.
  • D. Tốc độ phụ thuộc vào phần tử cần tìm, đôi khi tuần tự nhanh hơn.

Câu 10: Khi sử dụng thuật toán tìm kiếm tuần tự để tìm một phần tử K trong dãy A mà K không có trong A, thuật toán sẽ dừng lại khi nào?

  • A. Ngay lập tức khi nhận ra K không tồn tại.
  • B. Sau khi duyệt đến cuối dãy mà không tìm thấy K.
  • C. Khi số bước duyệt vượt quá số lượng phần tử của dãy.
  • D. Khi tìm thấy một phần tử khác có giá trị gần K nhất.

Câu 11: Khi sử dụng thuật toán tìm kiếm nhị phân để tìm một phần tử K trong dãy A (đã sắp xếp) mà K không có trong A, thuật toán sẽ dừng lại khi nào?

  • A. Khi phạm vi tìm kiếm (khoảng giữa low và high) trở thành rỗng.
  • B. Sau khi duyệt hết toàn bộ dãy.
  • C. Khi số bước duyệt vượt quá log₂(N).
  • D. Khi tìm thấy một phần tử khác có giá trị gần K nhất.

Câu 12: Giả sử bạn có một danh sách rất lớn (hàng trăm nghìn mục) các hồ sơ bệnh nhân, được lưu trữ theo thứ tự alphabet của tên. Bạn cần thường xuyên tìm kiếm hồ sơ của một bệnh nhân cụ thể. Thuật toán tìm kiếm nào là lựa chọn tối ưu nhất cho tác vụ này?

  • A. Tìm kiếm tuần tự.
  • B. Tìm kiếm nhị phân.
  • C. Cả hai đều có hiệu quả tương đương.
  • D. Cần sử dụng một cấu trúc dữ liệu khác không phải danh sách.

Câu 13: Bạn có một bộ sưu tập các bức ảnh kỹ thuật số được lưu trữ trong một thư mục trên máy tính. Các tệp ảnh không được sắp xếp theo bất kỳ thứ tự nào cụ thể (ví dụ: theo tên, ngày chụp). Bạn muốn tìm một bức ảnh cụ thể dựa trên tên tệp mà bạn nhớ mang máng. Hệ thống tệp của máy tính nhiều khả năng sẽ sử dụng nguyên tắc tìm kiếm nào để duyệt qua các tệp trong thư mục?

  • A. Tìm kiếm tuần tự.
  • B. Tìm kiếm nhị phân.
  • C. Tìm kiếm theo chỉ mục băm (Hashing).
  • D. Một thuật toán sắp xếp trước khi tìm kiếm.

Câu 14: Khi một dãy dữ liệu đã sắp xếp chứa nhiều phần tử có giá trị giống nhau, nếu tìm kiếm nhị phân tìm thấy phần tử cần tìm K tại một vị trí, vị trí đó có đảm bảo là vị trí xuất hiện **đầu tiên** của K trong dãy không?

  • A. Luôn luôn là vị trí đầu tiên.
  • B. Luôn luôn là vị trí cuối cùng.
  • C. Có thể là bất kỳ vị trí nào của K trong dãy.
  • D. Thuật toán tìm kiếm nhị phân không hoạt động với dữ liệu trùng lặp.

Câu 15: Giả sử bạn cần thực hiện 1000 lần tìm kiếm trên một danh sách dữ liệu lớn (1 triệu phần tử) chưa được sắp xếp. Chi phí để sắp xếp danh sách này là đáng kể (ví dụ: tương đương 100.000 bước duyệt tuần tự). Chiến lược nào sau đây có khả năng mang lại tổng thời gian thực hiện (sắp xếp + tìm kiếm) hiệu quả nhất?

  • A. Sử dụng tìm kiếm tuần tự cho cả 1000 lần tìm kiếm.
  • B. Sắp xếp danh sách một lần rồi sử dụng tìm kiếm nhị phân cho 1000 lần tìm kiếm.
  • C. Sử dụng tìm kiếm nhị phân trực tiếp trên danh sách chưa sắp xếp.
  • D. Chia danh sách thành các phần nhỏ hơn và tìm kiếm tuần tự trên từng phần.

Câu 16: Trong thuật toán tìm kiếm nhị phân, nếu giá trị cần tìm K lớn hơn giá trị của phần tử ở giữa dãy con hiện tại, thuật toán sẽ tiếp tục tìm kiếm ở phần nào của dãy con đó?

  • A. Nửa bên phải của phần tử giữa (bao gồm cả phần tử ngay sau phần tử giữa).
  • B. Nửa bên trái của phần tử giữa (bao gồm cả phần tử ngay trước phần tử giữa).
  • C. Toàn bộ dãy con hiện tại.
  • D. Chỉ phần tử ở giữa đó.

Câu 17: Cho dãy A = [1, 5, 8, 12, 16, 19, 23]. Tìm giá trị K = 15 bằng thuật toán tìm kiếm nhị phân. Các phần tử nào sẽ được kiểm tra theo thứ tự cho đến khi thuật toán dừng lại?

  • A. 12, 16, 19
  • B. 16, 12, 19
  • C. 12, 19, 16
  • D. 15

Câu 18: Điều gì xảy ra trong thuật toán tìm kiếm nhị phân khi giá trị cần tìm K bằng giá trị của phần tử ở giữa dãy con hiện tại?

  • A. Thuật toán tiếp tục tìm kiếm ở cả hai nửa của dãy con.
  • B. Thuật toán dừng lại và báo cáo không tìm thấy.
  • C. Thuật toán tiếp tục tìm kiếm ở nửa bên phải.
  • D. Thuật toán dừng lại và báo cáo tìm thấy phần tử tại vị trí đó.

Câu 19: Khi tìm kiếm thông tin trên Internet bằng các công cụ tìm kiếm (ví dụ: Google, Bing), "miền dữ liệu" được tìm kiếm là gì?

  • A. Tập hợp các trang web và nội dung đã được các công cụ tìm kiếm lập chỉ mục.
  • B. Chỉ các trang web có chứa chính xác các từ khóa bạn tìm.
  • C. Toàn bộ thông tin có trên tất cả các máy tính kết nối Internet.
  • D. Các kết quả được hiển thị trên trang kết quả tìm kiếm.

Câu 20: Thuật toán tìm kiếm nào sau đây có thể được áp dụng hiệu quả nhất để tìm kiếm một từ khóa trong một văn bản dài (ví dụ: một cuốn sách điện tử) mà không cần bất kỳ quá trình tiền xử lý (như sắp xếp) nào trên văn bản đó?

  • A. Tìm kiếm tuần tự.
  • B. Tìm kiếm nhị phân.
  • C. Cả hai đều không phù hợp.
  • D. Một thuật toán sắp xếp kết hợp tìm kiếm.

Câu 21: Độ phức tạp thời gian của thuật toán tìm kiếm tuần tự trong trường hợp xấu nhất là O(N), trong đó N là số lượng phần tử. Điều này có nghĩa là gì?

  • A. Số bước thực hiện tăng theo logarit của N.
  • B. Số bước thực hiện không phụ thuộc vào N.
  • C. Số bước thực hiện tăng tỉ lệ thuận với N.
  • D. Số bước thực hiện giảm khi N tăng.

Câu 22: So với tìm kiếm tuần tự, ưu điểm chính của tìm kiếm nhị phân khi áp dụng trên dữ liệu phù hợp là gì?

  • A. Đơn giản hơn trong cài đặt.
  • B. Có thể áp dụng cho mọi loại dữ liệu (đã sắp xếp hoặc chưa sắp xếp).
  • C. Đảm bảo tìm thấy tất cả các vị trí của phần tử trùng lặp.
  • D. Tốc độ tìm kiếm nhanh hơn đáng kể với dữ liệu lớn đã được sắp xếp.

Câu 23: Cho dãy số A = [5, 12, 8, 20, 15]. Bạn muốn tìm tất cả các phần tử lớn hơn 10 bằng tìm kiếm tuần tự. Các phần tử nào sẽ được tìm thấy?

  • A. 5, 12, 20, 15
  • B. 12, 20, 15
  • C. 12, 20
  • D. Chỉ 20

Câu 24: Một hệ thống quản lý kho hàng lưu trữ thông tin về hàng triệu sản phẩm theo mã sản phẩm (một chuỗi ký tự duy nhất cho mỗi sản phẩm). Mã sản phẩm được gán ngẫu nhiên và không theo bất kỳ thứ tự nào. Khi nhân viên muốn tìm kiếm thông tin chi tiết của một sản phẩm dựa vào mã, hệ thống nên sử dụng thuật toán tìm kiếm nào trên danh sách mã sản phẩm?

  • A. Tìm kiếm tuần tự.
  • B. Tìm kiếm nhị phân.
  • C. Cần sắp xếp lại danh sách mã sản phẩm trước.
  • D. Một thuật toán sắp xếp nhanh.

Câu 25: Khái niệm "miền dữ liệu" trong bài toán tìm kiếm giúp chúng ta xác định điều gì?

  • A. Tốc độ thực hiện của thuật toán tìm kiếm.
  • B. Số lượng phần tử cần tìm.
  • C. Tập hợp tất cả các đối tượng hoặc thông tin có thể được tìm kiếm.
  • D. Vị trí của phần tử cần tìm trong dữ liệu đầu vào.

Câu 26: Tìm kiếm nhị phân hoạt động bằng cách liên tục loại bỏ một nửa phạm vi tìm kiếm. Điều này đạt được nhờ vào việc so sánh phần tử cần tìm K với phần tử nào trong dãy con hiện tại?

  • A. Phần tử nằm chính giữa dãy con hiện tại.
  • B. Phần tử đầu tiên của dãy con hiện tại.
  • C. Phần tử cuối cùng của dãy con hiện tại.
  • D. Một phần tử ngẫu nhiên trong dãy con hiện tại.

Câu 27: Cho dãy số đã sắp xếp tăng dần A = [2, 5, 8, 12, 16]. Tìm giá trị K = 6 bằng thuật toán tìm kiếm nhị phân. Các giá trị của các biến "low" và "high" sẽ thay đổi như thế nào cho đến khi thuật toán dừng lại?

  • A. (0,4) -> (2,4) -> (3,4)
  • B. (0,4) -> (0,1) -> (0,0)
  • C. (0,4) -> (0,1) -> (1,1) -> (2,1)
  • D. (0,4) -> (2,4) -> (3,4) -> (4,4)

Câu 28: Nhận định nào sau đây là **sai** khi so sánh tìm kiếm tuần tự và tìm kiếm nhị phân?

  • A. Tìm kiếm nhị phân yêu cầu dữ liệu phải được sắp xếp.
  • B. Tìm kiếm nhị phân thường nhanh hơn tìm kiếm tuần tự trên dữ liệu lớn đã sắp xếp.
  • C. Tìm kiếm tuần tự có thể áp dụng cho dữ liệu chưa được sắp xếp.
  • D. Tìm kiếm tuần tự chỉ hiệu quả khi dữ liệu có kích thước rất lớn.

Câu 29: Trong một danh sách gồm 1024 phần tử đã sắp xếp, trong trường hợp xấu nhất, thuật toán tìm kiếm nhị phân cần tối đa bao nhiêu bước so sánh để xác định một phần tử có tồn tại trong danh sách hay không?

  • A. 1024
  • B. 512
  • C. 10
  • D. 1

Câu 30: Bạn đang viết chương trình tìm kiếm một từ trong một từ điển điện tử có hàng trăm nghìn từ đã được sắp xếp theo thứ tự alphabet. Kiểu dữ liệu và yêu cầu tìm kiếm này phù hợp nhất với thuật toán nào?

  • A. Tìm kiếm tuần tự.
  • B. Tìm kiếm nhị phân.
  • C. Cả hai đều có hiệu quả tương đương.
  • D. Một thuật toán sắp xếp.

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 04

Câu 1: Khi bạn sử dụng công cụ tìm kiếm trên một website thương mại điện tử để tìm một sản phẩm cụ thể (ví dụ: 'điện thoại Samsung Galaxy S23'), 'miền dữ liệu' của bài toán tìm kiếm này là gì?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 04

Câu 2: Thuật toán tìm kiếm tuần tự (Sequential Search) hoạt động dựa trên nguyên tắc cơ bản nào?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 04

Câu 3: Cho dãy số A = [4, 12, 7, 25, 18, 31, 9]. Nếu bạn tìm kiếm giá trị K = 18 bằng thuật toán tìm kiếm tuần tự, bạn sẽ cần duyệt qua bao nhiêu phần tử trước khi tìm thấy K?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 04

Câu 4: Trong trường hợp nào, thuật toán tìm kiếm tuần tự đạt hiệu suất tốt nhất (số bước duyệt ít nhất)?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 04

Câu 5: Thuật toán tìm kiếm nhị phân (Binary Search) chỉ có thể áp dụng trực tiếp một cách hiệu quả khi dữ liệu đầu vào có đặc điểm gì?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 04

Câu 6: Cho dãy số đã sắp xếp tăng dần A = [10, 20, 30, 40, 50, 60, 70, 80, 90]. Bạn cần tìm giá trị K = 70 bằng thuật toán tìm kiếm nhị phân. Giá trị của phần tử được kiểm tra ở bước **thứ hai** là bao nhiêu?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 04

Câu 7: Với một dãy số đã sắp xếp có N phần tử, số bước duyệt tối đa (trong trường hợp xấu nhất) của thuật toán tìm kiếm nhị phân xấp xỉ là bao nhiêu?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 04

Câu 8: Bạn có một tệp văn bản chứa hàng triệu dòng dữ liệu, mỗi dòng là một giao dịch bán hàng. Các giao dịch này được lưu trữ theo thứ tự thời gian (không sắp xếp theo bất kỳ trường nào khác). Bạn cần tìm tất cả các giao dịch của một khách hàng cụ thể dựa trên ID khách hàng. Thuật toán tìm kiếm nào phù hợp nhất để thực hiện công việc này?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 04

Câu 9: So sánh tốc độ giữa tìm kiếm tuần tự và tìm kiếm nhị phân trên một dãy dữ liệu rất lớn (ví dụ 1 tỷ phần tử) đã được sắp xếp. Nhận định nào sau đây là đúng nhất?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 04

Câu 10: Khi sử dụng thuật toán tìm kiếm tuần tự để tìm một phần tử K trong dãy A mà K không có trong A, thuật toán sẽ dừng lại khi nào?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 04

Câu 11: Khi sử dụng thuật toán tìm kiếm nhị phân để tìm một phần tử K trong dãy A (đã sắp xếp) mà K không có trong A, thuật toán sẽ dừng lại khi nào?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 04

Câu 12: Giả sử bạn có một danh sách rất lớn (hàng trăm nghìn mục) các hồ sơ bệnh nhân, được lưu trữ theo thứ tự alphabet của tên. Bạn cần thường xuyên tìm kiếm hồ sơ của một bệnh nhân cụ thể. Thuật toán tìm kiếm nào là lựa chọn tối ưu nhất cho tác vụ này?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 04

Câu 13: Bạn có một bộ sưu tập các bức ảnh kỹ thuật số được lưu trữ trong một thư mục trên máy tính. Các tệp ảnh không được sắp xếp theo bất kỳ thứ tự nào cụ thể (ví dụ: theo tên, ngày chụp). Bạn muốn tìm một bức ảnh cụ thể dựa trên tên tệp mà bạn nhớ mang máng. Hệ thống tệp của máy tính nhiều khả năng sẽ sử dụng nguyên tắc tìm kiếm nào để duyệt qua các tệp trong thư mục?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 04

Câu 14: Khi một dãy dữ liệu đã sắp xếp chứa nhiều phần tử có giá trị giống nhau, nếu tìm kiếm nhị phân tìm thấy phần tử cần tìm K tại một vị trí, vị trí đó có đảm bảo là vị trí xuất hiện **đầu tiên** của K trong dãy không?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 04

Câu 15: Giả sử bạn cần thực hiện 1000 lần tìm kiếm trên một danh sách dữ liệu lớn (1 triệu phần tử) chưa được sắp xếp. Chi phí để sắp xếp danh sách này là đáng kể (ví dụ: tương đương 100.000 bước duyệt tuần tự). Chiến lược nào sau đây có khả năng mang lại tổng thời gian thực hiện (sắp xếp + tìm kiếm) hiệu quả nhất?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 04

Câu 16: Trong thuật toán tìm kiếm nhị phân, nếu giá trị cần tìm K lớn hơn giá trị của phần tử ở giữa dãy con hiện tại, thuật toán sẽ tiếp tục tìm kiếm ở phần nào của dãy con đó?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 04

Câu 17: Cho dãy A = [1, 5, 8, 12, 16, 19, 23]. Tìm giá trị K = 15 bằng thuật toán tìm kiếm nhị phân. Các phần tử nào sẽ được kiểm tra theo thứ tự cho đến khi thuật toán dừng lại?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 04

Câu 18: Điều gì xảy ra trong thuật toán tìm kiếm nhị phân khi giá trị cần tìm K bằng giá trị của phần tử ở giữa dãy con hiện tại?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 04

Câu 19: Khi tìm kiếm thông tin trên Internet bằng các công cụ tìm kiếm (ví dụ: Google, Bing), 'miền dữ liệu' được tìm kiếm là gì?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 04

Câu 20: Thuật toán tìm kiếm nào sau đây có thể được áp dụng hiệu quả nhất để tìm kiếm một từ khóa trong một văn bản dài (ví dụ: một cuốn sách điện tử) mà không cần bất kỳ quá trình tiền xử lý (như sắp xếp) nào trên văn bản đó?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 04

Câu 21: Độ phức tạp thời gian của thuật toán tìm kiếm tuần tự trong trường hợp xấu nhất là O(N), trong đó N là số lượng phần tử. Điều này có nghĩa là gì?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 04

Câu 22: So với tìm kiếm tuần tự, ưu điểm chính của tìm kiếm nhị phân khi áp dụng trên dữ liệu phù hợp là gì?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 04

Câu 23: Cho dãy số A = [5, 12, 8, 20, 15]. Bạn muốn tìm tất cả các phần tử lớn hơn 10 bằng tìm kiếm tuần tự. Các phần tử nào sẽ được tìm thấy?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 04

Câu 24: Một hệ thống quản lý kho hàng lưu trữ thông tin về hàng triệu sản phẩm theo mã sản phẩm (một chuỗi ký tự duy nhất cho mỗi sản phẩm). Mã sản phẩm được gán ngẫu nhiên và không theo bất kỳ thứ tự nào. Khi nhân viên muốn tìm kiếm thông tin chi tiết của một sản phẩm dựa vào mã, hệ thống nên sử dụng thuật toán tìm kiếm nào trên danh sách mã sản phẩm?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 04

Câu 25: Khái niệm 'miền dữ liệu' trong bài toán tìm kiếm giúp chúng ta xác định điều gì?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 04

Câu 26: Tìm kiếm nhị phân hoạt động bằng cách liên tục loại bỏ một nửa phạm vi tìm kiếm. Điều này đạt được nhờ vào việc so sánh phần tử cần tìm K với phần tử nào trong dãy con hiện tại?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 04

Câu 27: Cho dãy số đã sắp xếp tăng dần A = [2, 5, 8, 12, 16]. Tìm giá trị K = 6 bằng thuật toán tìm kiếm nhị phân. Các giá trị của các biến 'low' và 'high' sẽ thay đổi như thế nào cho đến khi thuật toán dừng lại?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 04

Câu 28: Nhận định nào sau đây là **sai** khi so sánh tìm kiếm tuần tự và tìm kiếm nhị phân?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 04

Câu 29: Trong một danh sách gồm 1024 phần tử đã sắp xếp, trong trường hợp xấu nhất, thuật toán tìm kiếm nhị phân cần tối đa bao nhiêu bước so sánh để xác định một phần tử có tồn tại trong danh sách hay không?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 04

Câu 30: Bạn đang viết chương trình tìm kiếm một từ trong một từ điển điện tử có hàng trăm nghìn từ đã được sắp xếp theo thứ tự alphabet. Kiểu dữ liệu và yêu cầu tìm kiếm này phù hợp nhất với thuật toán nào?

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm - Đề 05

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm - Đề 05 được xây dựng với nhiều câu hỏi chất lượng, sát với nội dung chương trình học, giúp bạn dễ dàng ôn tập và kiểm tra kiến thức hiệu quả. Hãy cùng bắt đầu làm bài tập trắc nghiệm ngay để nâng cao hiểu biết và chuẩn bị tốt cho kỳ thi sắp tới!

Câu 1: Thuật toán sắp xếp nào sau đây hoạt động bằng cách lặp đi lặp lại việc so sánh các cặp phần tử liền kề và đổi chỗ nếu chúng không đúng thứ tự?

  • A. Thuật toán sắp xếp chọn (Selection Sort)
  • B. Thuật toán sắp xếp nổi bọt (Bubble Sort)
  • C. Thuật toán sắp xếp chèn (Insertion Sort)
  • D. Thuật toán sắp xếp nhanh (Quick Sort)

Câu 2: Khi sử dụng thuật toán sắp xếp chọn (Selection Sort) để sắp xếp dãy số [5, 2, 8, 1, 9] theo thứ tự tăng dần, dãy số sẽ trông như thế nào sau khi hoàn thành **lượt duyệt đầu tiên** (tìm phần tử nhỏ nhất và đưa về đầu)?

  • A. [2, 5, 8, 1, 9]
  • B. [1, 2, 5, 8, 9]
  • C. [1, 2, 8, 5, 9]
  • D. [5, 2, 8, 1, 9]

Câu 3: Thuật toán sắp xếp chèn (Insertion Sort) hoạt động dựa trên nguyên tắc chính nào?

  • A. Chia dãy thành hai nửa và sắp xếp riêng lẻ
  • B. Tìm phần tử nhỏ nhất và đặt vào đúng vị trí
  • C. So sánh các cặp phần tử liền kề và đổi chỗ
  • D. Xây dựng dãy đã sắp xếp từng bước bằng cách chèn phần tử vào đúng vị trí trong phần đã sắp xếp

Câu 4: Cho dãy số [7, 4, 1, 9, 3]. Khi áp dụng thuật toán sắp xếp nổi bọt (Bubble Sort) theo thứ tự tăng dần, dãy số sẽ như thế nào sau khi kết thúc **lượt duyệt thứ hai**?

  • A. [4, 1, 7, 3, 9]
  • B. [1, 4, 3, 7, 9]
  • C. [1, 4, 7, 3, 9]
  • D. [7, 4, 1, 9, 3]

Câu 5: Thuật toán sắp xếp nào sau đây có hiệu suất tốt nhất (trung bình) khi áp dụng cho một dãy số **gần như đã được sắp xếp**?

  • A. Thuật toán sắp xếp chọn (Selection Sort)
  • B. Thuật toán sắp xếp nổi bọt (Bubble Sort)
  • C. Thuật toán sắp xếp chèn (Insertion Sort)
  • D. Tất cả đều như nhau với dãy gần sắp xếp

Câu 6: Độ phức tạp thời gian trong trường hợp xấu nhất của các thuật toán sắp xếp đơn giản như Sắp xếp nổi bọt, Sắp xếp chọn, Sắp xếp chèn là bao nhiêu?

  • A. O(log n)
  • B. O(n^2)
  • C. O(n log n)
  • D. O(n)

Câu 7: Khi sử dụng thuật toán sắp xếp chọn (Selection Sort) để sắp xếp một dãy gồm N phần tử, số lần **đổi chỗ** (swap) tối đa có thể xảy ra là bao nhiêu?

  • A. N * (N-1) / 2
  • B. N * (N-1)
  • C. N^2
  • D. N - 1

Câu 8: Dãy số [3, 1, 4, 1, 5, 9, 2, 6]. Áp dụng thuật toán sắp xếp chèn (Insertion Sort) theo thứ tự tăng dần. Dãy số sẽ như thế nào sau khi phần tử có giá trị 5 được chèn vào đúng vị trí của nó?

  • A. [1, 3, 4, 1, 5, 9, 2, 6]
  • B. [1, 1, 3, 4, 5, 9, 2, 6]
  • C. [1, 3, 4, 5, 1, 9, 2, 6]
  • D. [3, 1, 4, 1, 5, 9, 2, 6]

Câu 9: Đặc điểm nào sau đây là **không đúng** về thuật toán sắp xếp nổi bọt (Bubble Sort)?

  • A. So sánh và đổi chỗ các phần tử liền kề.
  • B. Trong mỗi lượt, phần tử lớn nhất (hoặc nhỏ nhất) chưa được sắp xếp sẽ "nổi" lên cuối dãy chưa sắp xếp.
  • C. Hiệu quả nhất khi dãy số đã được sắp xếp ngược.
  • D. Có thể dừng sớm nếu không có cặp phần tử nào được đổi chỗ trong một lượt duyệt.

Câu 10: Giả sử bạn có một danh sách rất lớn các bản ghi cần sắp xếp, và bộ nhớ là một hạn chế nghiêm trọng. Thuật toán sắp xếp nào trong các thuật toán đơn giản sau đây thường được ưu tiên vì nó thực hiện sắp xếp **tại chỗ** (in-place) và không yêu cầu thêm không gian bộ nhớ đáng kể?

  • A. Merge Sort
  • B. Quick Sort
  • C. Heap Sort
  • D. Cả Sắp xếp nổi bọt, Sắp xếp chọn và Sắp xếp chèn đều là thuật toán tại chỗ.

Câu 11: Cho dãy số [10, 5, 3, 8, 1]. Khi sử dụng thuật toán sắp xếp chọn (Selection Sort) để sắp xếp tăng dần, phần tử nào sẽ nằm ở vị trí đầu tiên sau khi hoàn thành **lượt duyệt thứ hai**?

  • A. 3
  • B. 1
  • C. 5
  • D. 8

Câu 12: Trong thuật toán sắp xếp chèn (Insertion Sort), sau khi phần tử thứ `i` được chèn vào đúng vị trí trong dãy con đã sắp xếp `A[0...i-1]`, dãy con `A[0...i]` sẽ có đặc điểm gì?

  • A. Tất cả các phần tử nhỏ hơn `A[i]` đều nằm ở bên trái nó.
  • B. Dãy con `A[0...i]` đã được sắp xếp hoàn chỉnh.
  • C. Phần tử `A[i]` chắc chắn là phần tử lớn nhất trong dãy con `A[0...i]`.
  • D. Số lần đổi chỗ luôn bằng `i`.

Câu 13: Xét thuật toán sắp xếp nổi bọt (Bubble Sort) trên dãy [6, 5, 4, 3, 2, 1]. Trong **lượt duyệt đầu tiên**, có bao nhiêu cặp phần tử liền kề được so sánh và đổi chỗ?

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

Câu 14: Tại sao thuật toán sắp xếp chọn (Selection Sort) lại có số lần đổi chỗ (swap) ít hơn đáng kể so với Sắp xếp nổi bọt (Bubble Sort) hoặc Sắp xếp chèn (Insertion Sort) trong trường hợp xấu nhất?

  • A. Nó chỉ thực hiện một lần đổi chỗ cho mỗi lượt duyệt chính (đưa phần tử nhỏ nhất về đúng vị trí).
  • B. Nó không bao giờ thực hiện đổi chỗ.
  • C. Nó chỉ so sánh các phần tử ở xa nhau.
  • D. Nó sử dụng thêm bộ nhớ để lưu trữ vị trí cần đổi chỗ.

Câu 15: Trong trường hợp tốt nhất (dãy đã được sắp xếp tăng dần), thuật toán sắp xếp nào trong các thuật toán đơn giản sau đây có thể kết thúc với số bước ít nhất (hoặc độ phức tạp thời gian tốt nhất)?

  • A. Thuật toán sắp xếp chọn (Selection Sort)
  • B. Thuật toán sắp xếp nổi bọt (Bubble Sort)
  • C. Thuật toán sắp xếp chèn (Insertion Sort)
  • D. Cả Sắp xếp nổi bọt (với cờ hiệu) và Sắp xếp chèn

Câu 16: Một lập trình viên cần sắp xếp một danh sách nhỏ (dưới 20 phần tử). Anh ta nên chọn thuật toán sắp xếp đơn giản nào để tối ưu hóa tốc độ lập trình và dễ hiểu, thay vì hiệu quả chạy chương trình trên dữ liệu lớn?

  • A. Quick Sort
  • B. Merge Sort
  • C. Heap Sort
  • D. Bất kỳ thuật toán đơn giản nào như Bubble, Selection, hoặc Insertion Sort đều phù hợp.

Câu 17: Xét dãy số [4, 2, 7, 1, 5]. Sử dụng Sắp xếp nổi bọt (Bubble Sort) tăng dần. Dãy số sau khi kết thúc **lượt duyệt thứ nhất** (bubble up phần tử lớn nhất) là:

  • A. [2, 4, 1, 5, 7]
  • B. [4, 2, 7, 1, 5]
  • C. [1, 2, 4, 5, 7]
  • D. [4, 2, 1, 5, 7]

Câu 18: Thuật toán sắp xếp nào có cách tiếp cận tương tự như cách con người sắp xếp một bộ bài (cầm từng lá bài lên và chèn vào đúng vị trí trong phần bài đã xếp)?

  • A. Sắp xếp nổi bọt (Bubble Sort)
  • B. Sắp xếp chọn (Selection Sort)
  • C. Sắp xếp chèn (Insertion Sort)
  • D. Sắp xếp nhanh (Quick Sort)

Câu 19: Dãy số [8, 3, 6, 1, 4]. Sử dụng Sắp xếp chọn (Selection Sort) tăng dần. Dãy số sau khi kết thúc **lượt duyệt thứ ba** (đã sắp xếp 3 phần tử đầu tiên) là:

  • A. [1, 3, 4, 6, 8]
  • B. [1, 3, 4, 8, 6]
  • C. [1, 3, 6, 8, 4]
  • D. [1, 4, 6, 8, 3]

Câu 20: Thuật toán sắp xếp đơn giản nào sau đây có số lần **so sánh** là cố định, không phụ thuộc vào trạng thái ban đầu của dãy (dù đã sắp xếp hay chưa)?

  • A. Thuật toán sắp xếp chọn (Selection Sort)
  • B. Thuật toán sắp xếp nổi bọt (Bubble Sort)
  • C. Thuật toán sắp xếp chèn (Insertion Sort)
  • D. Cả Sắp xếp nổi bọt và Sắp xếp chèn

Câu 21: Khi nào thì nên cân nhắc sử dụng các thuật toán sắp xếp đơn giản như Sắp xếp nổi bọt, Sắp xếp chọn hoặc Sắp xếp chèn thay vì các thuật toán phức tạp hơn như Quick Sort hay Merge Sort?

  • A. Khi cần sắp xếp một lượng dữ liệu rất lớn.
  • B. Khi yêu cầu hiệu suất chạy chương trình cực kỳ cao trên mọi loại dữ liệu.
  • C. Khi kích thước dữ liệu nhỏ hoặc cần triển khai thuật toán một cách nhanh chóng và đơn giản.
  • D. Khi dữ liệu luôn ở trạng thái sắp xếp ngược hoàn toàn.

Câu 22: Dãy số [5, 2, 4, 6, 1, 3]. Sử dụng Sắp xếp chèn (Insertion Sort) tăng dần. Dãy số sau khi hoàn thành việc chèn phần tử có giá trị 6 (phần tử thứ 4 ban đầu) là:

  • A. [1, 2, 4, 5, 6, 3]
  • B. [2, 4, 5, 6, 1, 3]
  • C. [2, 4, 5, 1, 6, 3]
  • D. [2, 4, 5, 6, 1, 3] (Phần tử 6 đã ở đúng vị trí so với dãy con [2, 4, 5])

Câu 23: Phát biểu nào sau đây mô tả đúng về việc "sắp xếp tại chỗ" (in-place sorting)?

  • A. Thuật toán chỉ sử dụng một lượng không gian bộ nhớ phụ trợ cố định, không phụ thuộc vào kích thước của dữ liệu đầu vào (hoặc chỉ một lượng rất nhỏ so với dữ liệu).
  • B. Thuật toán yêu cầu tạo một bản sao hoàn chỉnh của dữ liệu gốc.
  • C. Thứ tự tương đối của các phần tử có giá trị bằng nhau được giữ nguyên sau khi sắp xếp.
  • D. Thuật toán chỉ hoạt động trên dữ liệu đã được lưu trữ trên đĩa cứng.

Câu 24: Đối với một dãy số có N phần tử, trong trường hợp xấu nhất, thuật toán sắp xếp nổi bọt (Bubble Sort) sẽ thực hiện khoảng bao nhiêu phép so sánh?

  • A. N
  • B. N * log(N)
  • C. N * (N-1) / 2
  • D. N - 1

Câu 25: Dãy số [9, 7, 5, 3, 1]. Sử dụng Sắp xếp chèn (Insertion Sort) tăng dần. Dãy số sẽ như thế nào sau khi hoàn thành việc chèn phần tử có giá trị 3 (phần tử thứ 4 ban đầu)?

  • A. [3, 5, 7, 9, 1]
  • B. [9, 7, 5, 3, 1]
  • C. [1, 3, 5, 7, 9]
  • D. [7, 5, 3, 9, 1]

Câu 26: Sự khác biệt cơ bản trong cách tìm phần tử để đưa về đúng vị trí giữa Sắp xếp chọn (Selection Sort) và Sắp xếp chèn (Insertion Sort) là gì?

  • A. Selection Sort tìm phần tử lớn nhất, còn Insertion Sort tìm phần tử nhỏ nhất.
  • B. Selection Sort tìm phần tử nhỏ nhất trong phần chưa sắp xếp và đổi chỗ về đầu phần chưa sắp xếp; Insertion Sort lấy phần tử đầu tiên của phần chưa sắp xếp và chèn vào đúng vị trí trong phần đã sắp xếp.
  • C. Selection Sort chỉ hoạt động với số nguyên, còn Insertion Sort hoạt động với mọi loại dữ liệu.
  • D. Selection Sort sử dụng đệ quy, còn Insertion Sort sử dụng vòng lặp.

Câu 27: Một thuật toán sắp xếp được gọi là "ổn định" (stable) nếu nó giữ nguyên thứ tự tương đối của các phần tử có giá trị bằng nhau. Trong các thuật toán đơn giản, thuật toán nào sau đây là **không** ổn định?

  • A. Thuật toán sắp xếp chọn (Selection Sort)
  • B. Thuật toán sắp xếp nổi bọt (Bubble Sort)
  • C. Thuật toán sắp xếp chèn (Insertion Sort)
  • D. Cả ba thuật toán đều ổn định.

Câu 28: Xét dãy số [2, 8, 3, 5]. Sử dụng Sắp xếp nổi bọt (Bubble Sort) tăng dần. Sau lượt duyệt thứ nhất, dãy số là [2, 3, 5, 8]. Có thể kết luận gì về trạng thái sắp xếp của dãy tại thời điểm này?

  • A. Dãy đã được sắp xếp hoàn chỉnh.
  • B. Phần tử đầu tiên đã ở đúng vị trí cuối cùng của nó.
  • C. Tất cả các phần tử đã di chuyển đến vị trí cuối cùng của chúng.
  • D. Phần tử cuối cùng (8) đã ở đúng vị trí cuối cùng của nó.

Câu 29: Khi sắp xếp một danh sách gồm các đối tượng phức tạp (ví dụ: danh sách sinh viên, mỗi sinh viên có nhiều thuộc tính), việc sử dụng thuật toán sắp xếp chọn (Selection Sort) có thể có một ưu điểm nhỏ so với Sắp xếp nổi bọt hoặc Sắp xếp chèn trong một số trường hợp thực tế. Ưu điểm đó là gì?

  • A. Số lần so sánh ít hơn.
  • B. Độ phức tạp thời gian tốt hơn.
  • C. Số lần đổi chỗ (swap) ít hơn, điều này có thể quan trọng nếu việc đổi chỗ các đối tượng lớn tốn kém.
  • D. Luôn ổn định (stable).

Câu 30: Cho dãy số [1, 2, 3, 4, 5]. Khi áp dụng thuật toán sắp xếp chèn (Insertion Sort) tăng dần, số lần đổi chỗ (swap) xảy ra là bao nhiêu?

  • A. 0
  • B. N
  • C. N * (N-1) / 2
  • D. Không thể xác định được.

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 05

Câu 1: Thuật toán sắp xếp nào sau đây hoạt động bằng cách lặp đi lặp lại việc so sánh các cặp phần tử liền kề và đổi chỗ nếu chúng không đúng thứ tự?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 05

Câu 2: Khi sử dụng thuật toán sắp xếp chọn (Selection Sort) để sắp xếp dãy số [5, 2, 8, 1, 9] theo thứ tự tăng dần, dãy số sẽ trông như thế nào sau khi hoàn thành **lượt duyệt đầu tiên** (tìm phần tử nhỏ nhất và đưa về đầu)?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 05

Câu 3: Thuật toán sắp xếp chèn (Insertion Sort) hoạt động dựa trên nguyên tắc chính nào?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 05

Câu 4: Cho dãy số [7, 4, 1, 9, 3]. Khi áp dụng thuật toán sắp xếp nổi bọt (Bubble Sort) theo thứ tự tăng dần, dãy số sẽ như thế nào sau khi kết thúc **lượt duyệt thứ hai**?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 05

Câu 5: Thuật toán sắp xếp nào sau đây có hiệu suất tốt nhất (trung bình) khi áp dụng cho một dãy số **gần như đã được sắp xếp**?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 05

Câu 6: Độ phức tạp thời gian trong trường hợp xấu nhất của các thuật toán sắp xếp đơn giản như Sắp xếp nổi bọt, Sắp xếp chọn, Sắp xếp chèn là bao nhiêu?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 05

Câu 7: Khi sử dụng thuật toán sắp xếp chọn (Selection Sort) để sắp xếp một dãy gồm N phần tử, số lần **đổi chỗ** (swap) tối đa có thể xảy ra là bao nhiêu?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 05

Câu 8: Dãy số [3, 1, 4, 1, 5, 9, 2, 6]. Áp dụng thuật toán sắp xếp chèn (Insertion Sort) theo thứ tự tăng dần. Dãy số sẽ như thế nào sau khi phần tử có giá trị 5 được chèn vào đúng vị trí của nó?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 05

Câu 9: Đặc điểm nào sau đây là **không đúng** về thuật toán sắp xếp nổi bọt (Bubble Sort)?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 05

Câu 10: Giả sử bạn có một danh sách rất lớn các bản ghi cần sắp xếp, và bộ nhớ là một hạn chế nghiêm trọng. Thuật toán sắp xếp nào trong các thuật toán đơn giản sau đây thường được ưu tiên vì nó thực hiện sắp xếp **tại chỗ** (in-place) và không yêu cầu thêm không gian bộ nhớ đáng kể?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 05

Câu 11: Cho dãy số [10, 5, 3, 8, 1]. Khi sử dụng thuật toán sắp xếp chọn (Selection Sort) để sắp xếp tăng dần, phần tử nào sẽ nằm ở vị trí đầu tiên sau khi hoàn thành **lượt duyệt thứ hai**?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 05

Câu 12: Trong thuật toán sắp xếp chèn (Insertion Sort), sau khi phần tử thứ `i` được chèn vào đúng vị trí trong dãy con đã sắp xếp `A[0...i-1]`, dãy con `A[0...i]` sẽ có đặc điểm gì?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 05

Câu 13: Xét thuật toán sắp xếp nổi bọt (Bubble Sort) trên dãy [6, 5, 4, 3, 2, 1]. Trong **lượt duyệt đầu tiên**, có bao nhiêu cặp phần tử liền kề được so sánh và đổi chỗ?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 05

Câu 14: Tại sao thuật toán sắp xếp chọn (Selection Sort) lại có số lần đổi chỗ (swap) ít hơn đáng kể so với Sắp xếp nổi bọt (Bubble Sort) hoặc Sắp xếp chèn (Insertion Sort) trong trường hợp xấu nhất?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 05

Câu 15: Trong trường hợp tốt nhất (dãy đã được sắp xếp tăng dần), thuật toán sắp xếp nào trong các thuật toán đơn giản sau đây có thể kết thúc với số bước ít nhất (hoặc độ phức tạp thời gian tốt nhất)?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 05

Câu 16: Một lập trình viên cần sắp xếp một danh sách nhỏ (dưới 20 phần tử). Anh ta nên chọn thuật toán sắp xếp đơn giản nào để tối ưu hóa tốc độ lập trình và dễ hiểu, thay vì hiệu quả chạy chương trình trên dữ liệu lớn?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 05

Câu 17: Xét dãy số [4, 2, 7, 1, 5]. Sử dụng Sắp xếp nổi bọt (Bubble Sort) tăng dần. Dãy số sau khi kết thúc **lượt duyệt thứ nhất** (bubble up phần tử lớn nhất) là:

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 05

Câu 18: Thuật toán sắp xếp nào có cách tiếp cận tương tự như cách con người sắp xếp một bộ bài (cầm từng lá bài lên và chèn vào đúng vị trí trong phần bài đã xếp)?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 05

Câu 19: Dãy số [8, 3, 6, 1, 4]. Sử dụng Sắp xếp chọn (Selection Sort) tăng dần. Dãy số sau khi kết thúc **lượt duyệt thứ ba** (đã sắp xếp 3 phần tử đầu tiên) là:

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 05

Câu 20: Thuật toán sắp xếp đơn giản nào sau đây có số lần **so sánh** là cố định, không phụ thuộc vào trạng thái ban đầu của dãy (dù đã sắp xếp hay chưa)?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 05

Câu 21: Khi nào thì nên cân nhắc sử dụng các thuật toán sắp xếp đơn giản như Sắp xếp nổi bọt, Sắp xếp chọn hoặc Sắp xếp chèn thay vì các thuật toán phức tạp hơn như Quick Sort hay Merge Sort?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 05

Câu 22: Dãy số [5, 2, 4, 6, 1, 3]. Sử dụng Sắp xếp chèn (Insertion Sort) tăng dần. Dãy số sau khi hoàn thành việc chèn phần tử có giá trị 6 (phần tử thứ 4 ban đầu) là:

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 05

Câu 23: Phát biểu nào sau đây mô tả đúng về việc 'sắp xếp tại chỗ' (in-place sorting)?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 05

Câu 24: Đối với một dãy số có N phần tử, trong trường hợp xấu nhất, thuật toán sắp xếp nổi bọt (Bubble Sort) sẽ thực hiện khoảng bao nhiêu phép so sánh?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 05

Câu 25: Dãy số [9, 7, 5, 3, 1]. Sử dụng Sắp xếp chèn (Insertion Sort) tăng dần. Dãy số sẽ như thế nào sau khi hoàn thành việc chèn phần tử có giá trị 3 (phần tử thứ 4 ban đầu)?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 05

Câu 26: Sự khác biệt cơ bản trong cách tìm phần tử để đưa về đúng vị trí giữa Sắp xếp chọn (Selection Sort) và Sắp xếp chèn (Insertion Sort) là gì?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 05

Câu 27: Một thuật toán sắp xếp được gọi là 'ổn định' (stable) nếu nó giữ nguyên thứ tự tương đối của các phần tử có giá trị bằng nhau. Trong các thuật toán đơn giản, thuật toán nào sau đây là **không** ổn định?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 05

Câu 28: Xét dãy số [2, 8, 3, 5]. Sử dụng Sắp xếp nổi bọt (Bubble Sort) tăng dần. Sau lượt duyệt thứ nhất, dãy số là [2, 3, 5, 8]. Có thể kết luận gì về trạng thái sắp xếp của dãy tại thời điểm này?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 05

Câu 29: Khi sắp xếp một danh sách gồm các đối tượng phức tạp (ví dụ: danh sách sinh viên, mỗi sinh viên có nhiều thuộc tính), việc sử dụng thuật toán sắp xếp chọn (Selection Sort) có thể có một ưu điểm nhỏ so với Sắp xếp nổi bọt hoặc Sắp xếp chèn trong một số trường hợp thực tế. Ưu điểm đó là gì?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 05

Câu 30: Cho dãy số [1, 2, 3, 4, 5]. Khi áp dụng thuật toán sắp xếp chèn (Insertion Sort) tăng dần, số lần đổi chỗ (swap) xảy ra là bao nhiêu?

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm - Đề 06

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm - Đề 06 được xây dựng với nhiều câu hỏi chất lượng, sát với nội dung chương trình học, giúp bạn dễ dàng ôn tập và kiểm tra kiến thức hiệu quả. Hãy cùng bắt đầu làm bài tập trắc nghiệm ngay để nâng cao hiểu biết và chuẩn bị tốt cho kỳ thi sắp tới!

Câu 1: Trong bài toán tìm kiếm, khái niệm "miền dữ liệu" (hay không gian tìm kiếm) được hiểu là gì?

  • A. Tập hợp các thuật toán có thể sử dụng để giải quyết bài toán.
  • B. Kết quả mong muốn mà thuật toán tìm kiếm trả về.
  • C. Tập hợp tất cả các đối tượng hoặc thông tin có thể chứa đối tượng cần tìm.
  • D. Số lượng bước thực hiện của thuật toán tìm kiếm.

Câu 2: Một người muốn tìm số điện thoại của một cửa hàng trong danh bạ điện thoại được sắp xếp theo tên. Thuật toán tìm kiếm nào sau đây không phù hợp nhất cho tình huống này nếu danh bạ rất lớn?

  • A. Tìm kiếm tuần tự (Sequential Search)
  • B. Tìm kiếm nhị phân (Binary Search)
  • C. Cả hai thuật toán đều phù hợp như nhau.
  • D. Tùy thuộc vào số lượng chữ cái trong tên cửa hàng.

Câu 3: Cho dãy số A = [15, 8, 22, 5, 12, 35, 18] và cần tìm giá trị K = 12 bằng thuật toán tìm kiếm tuần tự. Thuật toán sẽ thực hiện bao nhiêu phép so sánh tối đa với các phần tử trong dãy để tìm thấy K?

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

Câu 4: Thuật toán tìm kiếm nhị phân yêu cầu dữ liệu đầu vào phải có đặc điểm gì để hoạt động hiệu quả?

  • A. Chỉ chứa các số nguyên dương.
  • B. Đã được sắp xếp theo một thứ tự nhất định (tăng dần hoặc giảm dần).
  • C. Có số lượng phần tử là lũy thừa của 2.
  • D. Các phần tử có giá trị duy nhất, không trùng lặp.

Câu 5: Cho dãy số đã sắp xếp tăng dần: A = [2, 5, 8, 12, 16, 23, 38, 56, 72, 91]. Sử dụng tìm kiếm nhị phân để tìm giá trị K = 23. Chỉ số của phần tử được so sánh trong lần lặp thứ hai của thuật toán là bao nhiêu? (Giả sử chỉ số bắt đầu từ 0).

  • A. 5
  • B. 2
  • C. 7
  • D. 3

Câu 6: Xét trường hợp tốt nhất (best-case scenario) cho thuật toán tìm kiếm tuần tự trên một danh sách gồm N phần tử. Số phép so sánh cần thực hiện là bao nhiêu?

  • A. 1
  • B. N/2
  • C. N
  • D. log₂N

Câu 7: Xét trường hợp xấu nhất (worst-case scenario) cho thuật toán tìm kiếm nhị phân trên một danh sách gồm N phần tử đã được sắp xếp. Độ phức tạp thời gian (số phép so sánh) thường được biểu diễn bằng ký hiệu Big O là gì?

  • A. O(1)
  • B. O(N)
  • C. O(log N)
  • D. O(N²)

Câu 8: Ưu điểm chính của thuật toán tìm kiếm nhị phân so với tìm kiếm tuần tự khi áp dụng cho danh sách lớn và đã được sắp xếp là gì?

  • A. Không cần biết trước kích thước của danh sách.
  • B. Tốc độ tìm kiếm nhanh hơn đáng kể.
  • C. Đơn giản hơn trong cài đặt.
  • D. Có thể tìm kiếm trên dữ liệu chưa sắp xếp.

Câu 9: Khi nào thì thuật toán tìm kiếm tuần tự có thể là lựa chọn tốt hơn hoặc duy nhất có thể áp dụng so với tìm kiếm nhị phân?

  • A. Khi cần tìm nhiều phần tử cùng lúc.
  • B. Khi danh sách dữ liệu rất lớn.
  • C. Khi cần tìm phần tử ở cuối danh sách.
  • D. Khi danh sách dữ liệu chưa được sắp xếp.

Câu 10: Cho dãy số A = [10, 20, 30, 40, 50] và cần tìm K = 25 bằng tìm kiếm nhị phân. Sau khi thuật toán kết thúc, điều gì sẽ xảy ra?

  • A. Thuật toán sẽ báo lỗi vì K không phải là bội số của 10.
  • B. Thuật toán sẽ trả về chỉ số của phần tử gần nhất với 25 (ví dụ 20 hoặc 30).
  • C. Thuật toán sẽ kết thúc và báo rằng không tìm thấy phần tử K trong dãy.
  • D. Thuật toán sẽ tiếp tục lặp vô hạn.

Câu 11: Giả sử bạn có một danh sách 1024 phần tử đã được sắp xếp. Trong trường hợp xấu nhất, tìm kiếm nhị phân cần tối đa bao nhiêu lần so sánh để xác định một phần tử có tồn tại trong danh sách hay không?

  • A. 10
  • B. 11
  • C. 512
  • D. 1024

Câu 12: Trong thuật toán tìm kiếm nhị phân, nếu phần tử tại vị trí giữa lớn hơn giá trị cần tìm, thì phạm vi tìm kiếm tiếp theo sẽ được giới hạn ở đâu?

  • A. Nửa bên trái của danh sách (bao gồm cả phần tử giữa nếu bằng giá trị cần tìm).
  • B. Nửa bên phải của danh sách (không bao gồm phần tử giữa).
  • C. Toàn bộ danh sách lại từ đầu.
  • D. Chỉ phần tử tại vị trí giữa.

Câu 13: Bài toán "Tìm tất cả các bài viết về biến đổi khí hậu trên một trang web tin tức" có thể được coi là một bài toán tìm kiếm. Miền dữ liệu trong trường hợp này là gì?

  • A. Chỉ các bài viết có tiêu đề chứa cụm từ "biến đổi khí hậu".
  • B. Số lượng bài viết về biến đổi khí hậu.
  • C. Các trang web khác nói về biến đổi khí hậu.
  • D. Tất cả các bài viết có trên trang web tin tức đó.

Câu 14: Thuật toán tìm kiếm tuần tự hoạt động dựa trên nguyên tắc cơ bản nào?

  • A. Chia danh sách thành hai nửa.
  • B. So sánh phần tử cần tìm với phần tử ở giữa danh sách.
  • C. Duyệt qua từng phần tử trong danh sách từ đầu đến cuối cho đến khi tìm thấy hoặc hết danh sách.
  • D. Sử dụng chỉ mục để truy cập trực tiếp phần tử.

Câu 15: So sánh độ phức tạp thời gian trung bình của tìm kiếm tuần tự và tìm kiếm nhị phân trên một danh sách N phần tử (tìm kiếm thành công).

  • A. Tìm kiếm tuần tự là O(N), tìm kiếm nhị phân là O(log N).
  • B. Tìm kiếm tuần tự là O(log N), tìm kiếm nhị phân là O(N).
  • C. Cả hai đều là O(N).
  • D. Cả hai đều là O(log N).

Câu 16: Giả sử bạn có một danh sách 100 phần tử chưa được sắp xếp. Bạn muốn tìm một giá trị cụ thể. Thuật toán nào sau đây là lựa chọn phù hợp ngay lập tức mà không cần thao tác tiền xử lý?

  • A. Tìm kiếm tuần tự.
  • B. Tìm kiếm nhị phân.
  • C. Cả hai đều cần sắp xếp trước.
  • D. Không có thuật toán nào phù hợp.

Câu 17: Trong tìm kiếm nhị phân trên dãy A = [5, 10, 15, 20, 25, 30, 35], tìm K = 30. Lần so sánh đầu tiên sẽ kiểm tra phần tử nào? (Giả sử chỉ số từ 0)

  • A. 5 (chỉ số 0)
  • B. 15 (chỉ số 2)
  • C. 20 (chỉ số 3)
  • D. 35 (chỉ số 6)

Câu 18: Tiếp theo Câu 17, sau lần so sánh đầu tiên, phạm vi tìm kiếm tiếp theo cho K = 30 sẽ là các chỉ số nào?

  • A. [0, 2]
  • B. [0, 3]
  • C. [4, 6]
  • D. [3, 6]

Câu 19: Mục tiêu cuối cùng của bài toán tìm kiếm là gì?

  • A. Sắp xếp dữ liệu.
  • B. Xác định xem một đối tượng cụ thể có tồn tại trong miền dữ liệu hay không và, nếu có, trả về thông tin về nó (ví dụ: vị trí).
  • C. Đếm số lượng đối tượng trong miền dữ liệu.
  • D. Thay đổi giá trị của các đối tượng trong miền dữ liệu.

Câu 20: Tại sao việc sắp xếp dữ liệu lại là bước tiền xử lý quan trọng đối với thuật toán tìm kiếm nhị phân?

  • A. Để có thể loại bỏ một nửa miền tìm kiếm sau mỗi lần so sánh với phần tử giữa.
  • B. Để đảm bảo các phần tử có giá trị duy nhất.
  • C. Để giảm số lượng phần tử trong danh sách.
  • D. Để dễ dàng cài đặt thuật toán hơn.

Câu 21: Độ phức tạp thời gian của thuật toán tìm kiếm tuần tự trong trường hợp xấu nhất trên danh sách N phần tử là O(N). Điều này có nghĩa là gì?

  • A. Thời gian thực hiện tăng gấp đôi khi số lượng phần tử tăng gấp đôi.
  • B. Thời gian thực hiện không phụ thuộc vào số lượng phần tử.
  • C. Thời gian thực hiện tăng tỷ lệ thuận với số lượng phần tử N.
  • D. Thời gian thực hiện tăng rất nhanh khi số lượng phần tử tăng.

Câu 22: Một thư viện lưu trữ thông tin sách trong một cơ sở dữ liệu. Thủ thư muốn tìm một cuốn sách dựa trên mã số ISBN (một chuỗi ký tự duy nhất cho mỗi sách). Mã số ISBN không được sắp xếp. Thuật toán tìm kiếm nào phù hợp nhất?

  • A. Tìm kiếm tuần tự.
  • B. Tìm kiếm nhị phân.
  • C. Cần sắp xếp theo ISBN rồi dùng tìm kiếm nhị phân.
  • D. Chỉ có thể tìm bằng cách duyệt thủ công.

Câu 23: Cho dãy số A = [1, 3, 6, 10, 15, 21, 28]. Sử dụng tìm kiếm nhị phân để tìm K = 21. Chỉ số của phần tử được so sánh trong lần lặp cuối cùng (khi tìm thấy) là bao nhiêu? (Giả sử chỉ số từ 0)

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

Câu 24: Sự khác biệt cơ bản nhất trong cách tiếp cận giữa tìm kiếm tuần tự và tìm kiếm nhị phân là gì?

  • A. Một thuật toán sử dụng vòng lặp, thuật toán kia sử dụng đệ quy.
  • B. Một thuật toán kiểm tra từng phần tử một cách tuyến tính, thuật toán kia loại bỏ một phần đáng kể miền tìm kiếm sau mỗi bước so sánh.
  • C. Một thuật toán chỉ dùng cho số, thuật toán kia dùng cho mọi loại dữ liệu.
  • D. Một thuật toán nhanh, thuật toán kia chậm.

Câu 25: Khi nào thì tìm kiếm tuần tự đạt hiệu quả tốt nhất (ít bước nhất) trong trường hợp tìm thấy phần tử?

  • A. Khi phần tử cần tìm nằm ở vị trí đầu tiên của danh sách.
  • B. Khi phần tử cần tìm nằm ở vị trí cuối cùng của danh sách.
  • C. Khi danh sách chỉ có một phần tử.
  • D. Khi danh sách rất dài.

Câu 26: Một tệp văn bản chứa 1000 dòng. Mỗi dòng chứa một từ duy nhất. Bạn muốn tìm xem một từ cụ thể có xuất hiện trong tệp hay không. Nếu tệp chưa được sắp xếp, thuật toán tìm kiếm tuần tự sẽ phải đọc và so sánh tối đa bao nhiêu dòng trong trường hợp xấu nhất?

  • A. 10
  • B. 500
  • C. 999
  • D. 1000

Câu 27: Nếu tệp văn bản trong Câu 26 được sắp xếp theo thứ tự bảng chữ cái, và bạn sử dụng tìm kiếm nhị phân, số dòng tối đa cần đọc và so sánh trong trường hợp xấu nhất sẽ giảm đáng kể. Con số đó xấp xỉ bao nhiêu?

  • A. Khoảng 10 (log₂1000 ≈ 9.96)
  • B. Khoảng 500
  • C. Khoảng 100
  • D. Vẫn là 1000 vì phải đọc cả tệp.

Câu 28: Trong thuật toán tìm kiếm nhị phân, biến "mid" (chỉ số giữa) thường được tính như thế nào từ "low" (chỉ số đầu) và "high" (chỉ số cuối) của phạm vi tìm kiếm hiện tại?

  • A. mid = high - low
  • B. mid = low * high / 2
  • C. mid = (low + high) / 2 (lấy phần nguyên nếu cần)
  • D. mid = low + high

Câu 29: Bài toán "Tìm quyển sách có tiêu đề "Đắc Nhân Tâm" trong kho sách của cửa hàng A" có thể được mô tả như thế nào về mặt bài toán tìm kiếm?

  • A. Tìm một phần tử trong một danh sách ngẫu nhiên.
  • B. Tìm một đối tượng cụ thể ("quyển sách Đắc Nhân Tâm") trong một miền dữ liệu ("kho sách của cửa hàng A").
  • C. Sắp xếp các quyển sách theo tiêu đề.
  • D. Đếm số lượng sách trong kho.

Câu 30: Khi nào thì việc áp dụng thuật toán tìm kiếm nhị phân không mang lại lợi ích đáng kể về tốc độ so với tìm kiếm tuần tự?

  • A. Khi danh sách dữ liệu rất lớn.
  • B. Khi phần tử cần tìm nằm ở cuối danh sách.
  • C. Khi cần tìm kiếm nhiều lần trên cùng một danh sách đã sắp xếp.
  • D. Khi danh sách dữ liệu rất nhỏ (ví dụ dưới 10 phần tử).

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 06

Câu 1: Trong bài toán tìm kiếm, khái niệm 'miền dữ liệu' (hay không gian tìm kiếm) được hiểu là gì?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 06

Câu 2: Một người muốn tìm số điện thoại của một cửa hàng trong danh bạ điện thoại được sắp xếp theo tên. Thuật toán tìm kiếm nào sau đây *không* phù hợp nhất cho tình huống này nếu danh bạ rất lớn?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 06

Câu 3: Cho dãy số A = [15, 8, 22, 5, 12, 35, 18] và cần tìm giá trị K = 12 bằng thuật toán tìm kiếm tuần tự. Thuật toán sẽ thực hiện bao nhiêu phép so sánh tối đa với các phần tử trong dãy để tìm thấy K?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 06

Câu 4: Thuật toán tìm kiếm nhị phân yêu cầu dữ liệu đầu vào phải có đặc điểm gì để hoạt động hiệu quả?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 06

Câu 5: Cho dãy số đã sắp xếp tăng dần: A = [2, 5, 8, 12, 16, 23, 38, 56, 72, 91]. Sử dụng tìm kiếm nhị phân để tìm giá trị K = 23. Chỉ số của phần tử được so sánh trong lần lặp *thứ hai* của thuật toán là bao nhiêu? (Giả sử chỉ số bắt đầu từ 0).

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 06

Câu 6: Xét trường hợp tốt nhất (best-case scenario) cho thuật toán tìm kiếm tuần tự trên một danh sách gồm N phần tử. Số phép so sánh cần thực hiện là bao nhiêu?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 06

Câu 7: Xét trường hợp xấu nhất (worst-case scenario) cho thuật toán tìm kiếm nhị phân trên một danh sách gồm N phần tử đã được sắp xếp. Độ phức tạp thời gian (số phép so sánh) thường được biểu diễn bằng ký hiệu Big O là gì?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 06

Câu 8: Ưu điểm chính của thuật toán tìm kiếm nhị phân so với tìm kiếm tuần tự khi áp dụng cho danh sách *lớn và đã được sắp xếp* là gì?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 06

Câu 9: Khi nào thì thuật toán tìm kiếm tuần tự có thể là lựa chọn tốt hơn hoặc duy nhất có thể áp dụng so với tìm kiếm nhị phân?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 06

Câu 10: Cho dãy số A = [10, 20, 30, 40, 50] và cần tìm K = 25 bằng tìm kiếm nhị phân. Sau khi thuật toán kết thúc, điều gì sẽ xảy ra?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 06

Câu 11: Giả sử bạn có một danh sách 1024 phần tử đã được sắp xếp. Trong trường hợp xấu nhất, tìm kiếm nhị phân cần tối đa bao nhiêu lần so sánh để xác định một phần tử có tồn tại trong danh sách hay không?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 06

Câu 12: Trong thuật toán tìm kiếm nhị phân, nếu phần tử tại vị trí giữa lớn hơn giá trị cần tìm, thì phạm vi tìm kiếm tiếp theo sẽ được giới hạn ở đâu?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 06

Câu 13: Bài toán 'Tìm tất cả các bài viết về biến đổi khí hậu trên một trang web tin tức' có thể được coi là một bài toán tìm kiếm. Miền dữ liệu trong trường hợp này là gì?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 06

Câu 14: Thuật toán tìm kiếm tuần tự hoạt động dựa trên nguyên tắc cơ bản nào?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 06

Câu 15: So sánh độ phức tạp thời gian trung bình của tìm kiếm tuần tự và tìm kiếm nhị phân trên một danh sách N phần tử (tìm kiếm thành công).

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 06

Câu 16: Giả sử bạn có một danh sách 100 phần tử chưa được sắp xếp. Bạn muốn tìm một giá trị cụ thể. Thuật toán nào sau đây là lựa chọn phù hợp *ngay lập tức* mà không cần thao tác tiền xử lý?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 06

Câu 17: Trong tìm kiếm nhị phân trên dãy A = [5, 10, 15, 20, 25, 30, 35], tìm K = 30. Lần so sánh đầu tiên sẽ kiểm tra phần tử nào? (Giả sử chỉ số từ 0)

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 06

Câu 18: Tiếp theo Câu 17, sau lần so sánh đầu tiên, phạm vi tìm kiếm tiếp theo cho K = 30 sẽ là các chỉ số nào?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 06

Câu 19: Mục tiêu cuối cùng của bài toán tìm kiếm là gì?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 06

Câu 20: Tại sao việc sắp xếp dữ liệu lại là bước tiền xử lý quan trọng đối với thuật toán tìm kiếm nhị phân?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 06

Câu 21: Độ phức tạp thời gian của thuật toán tìm kiếm tuần tự trong trường hợp xấu nhất trên danh sách N phần tử là O(N). Điều này có nghĩa là gì?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 06

Câu 22: Một thư viện lưu trữ thông tin sách trong một cơ sở dữ liệu. Thủ thư muốn tìm một cuốn sách dựa trên mã số ISBN (một chuỗi ký tự duy nhất cho mỗi sách). Mã số ISBN không được sắp xếp. Thuật toán tìm kiếm nào phù hợp nhất?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 06

Câu 23: Cho dãy số A = [1, 3, 6, 10, 15, 21, 28]. Sử dụng tìm kiếm nhị phân để tìm K = 21. Chỉ số của phần tử được so sánh trong lần lặp *cuối cùng* (khi tìm thấy) là bao nhiêu? (Giả sử chỉ số từ 0)

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 06

Câu 24: Sự khác biệt cơ bản nhất trong cách tiếp cận giữa tìm kiếm tuần tự và tìm kiếm nhị phân là gì?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 06

Câu 25: Khi nào thì tìm kiếm tuần tự đạt hiệu quả tốt nhất (ít bước nhất) trong trường hợp tìm thấy phần tử?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 06

Câu 26: Một tệp văn bản chứa 1000 dòng. Mỗi dòng chứa một từ duy nhất. Bạn muốn tìm xem một từ cụ thể có xuất hiện trong tệp hay không. Nếu tệp chưa được sắp xếp, thuật toán tìm kiếm tuần tự sẽ phải đọc và so sánh tối đa bao nhiêu dòng trong trường hợp xấu nhất?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 06

Câu 27: Nếu tệp văn bản trong Câu 26 được sắp xếp theo thứ tự bảng chữ cái, và bạn sử dụng tìm kiếm nhị phân, số dòng tối đa cần đọc và so sánh trong trường hợp xấu nhất sẽ giảm đáng kể. Con số đó xấp xỉ bao nhiêu?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 06

Câu 28: Trong thuật toán tìm kiếm nhị phân, biến 'mid' (chỉ số giữa) thường được tính như thế nào từ 'low' (chỉ số đầu) và 'high' (chỉ số cuối) của phạm vi tìm kiếm hiện tại?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 06

Câu 29: Bài toán 'Tìm quyển sách có tiêu đề 'Đắc Nhân Tâm' trong kho sách của cửa hàng A' có thể được mô tả như thế nào về mặt bài toán tìm kiếm?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 06

Câu 30: Khi nào thì việc áp dụng thuật toán tìm kiếm nhị phân *không* mang lại lợi ích đáng kể về tốc độ so với tìm kiếm tuần tự?

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm - Đề 07

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm - Đề 07 được xây dựng với nhiều câu hỏi chất lượng, sát với nội dung chương trình học, giúp bạn dễ dàng ôn tập và kiểm tra kiến thức hiệu quả. Hãy cùng bắt đầu làm bài tập trắc nghiệm ngay để nâng cao hiểu biết và chuẩn bị tốt cho kỳ thi sắp tới!

Câu 1: Mục đích chính của các thuật toán sắp xếp là gì?

  • A. Giảm dung lượng bộ nhớ cần thiết để lưu trữ dữ liệu.
  • B. Sắp xếp các phần tử theo một thứ tự nhất định (tăng dần hoặc giảm dần).
  • C. Tìm kiếm một phần tử cụ thể trong danh sách nhanh hơn.
  • D. Mã hóa dữ liệu để bảo mật thông tin.

Câu 2: Cho dãy số A = [6, 3, 8, 1, 5]. Áp dụng thuật toán sắp xếp nổi bọt (Bubble Sort) để sắp xếp dãy A theo thứ tự tăng dần. Dãy A sẽ như thế nào sau LƯỢT duyệt (pass) đầu tiên?

  • A. [1, 3, 5, 6, 8]
  • B. [3, 8, 6, 5, 1]
  • C. [3, 6, 1, 5, 8]
  • D. [6, 3, 8, 1, 5]

Câu 3: Thuật toán sắp xếp nào sau đây hoạt động dựa trên nguyên tắc liên tục tìm phần tử nhỏ nhất (hoặc lớn nhất) trong phần chưa được sắp xếp và đưa nó về đúng vị trí ở đầu phần đã sắp xếp?

  • A. Sắp xếp nổi bọt (Bubble Sort)
  • B. Sắp xếp chọn (Selection Sort)
  • C. Sắp xếp chèn (Insertion Sort)
  • D. Sắp xếp nhanh (Quick Sort)

Câu 4: Cho dãy số B = [7, 4, 9, 2, 5]. Áp dụng thuật toán sắp xếp chọn (Selection Sort) để sắp xếp dãy B theo thứ tự tăng dần. Dãy B sẽ như thế nào sau khi 2 phần tử ĐẦU TIÊN đã nằm đúng vị trí sau các bước chọn và hoán đổi?

  • A. [2, 4, 5, 7, 9]
  • B. [2, 7, 9, 4, 5]
  • C. [4, 2, 9, 7, 5]
  • D. [2, 4, 9, 7, 5]

Câu 5: Thuật toán sắp xếp nào sau đây hoạt động bằng cách xây dựng mảng đã sắp xếp từng bước một, lấy các phần tử từ mảng ban đầu và chèn chúng vào đúng vị trí trong phần mảng con đã được sắp xếp?

  • A. Sắp xếp nổi bọt (Bubble Sort)
  • B. Sắp xếp chọn (Selection Sort)
  • C. Sắp xếp chèn (Insertion Sort)
  • D. Sắp xếp trộn (Merge Sort)

Câu 6: Cho dãy số C = [5, 2, 4, 6, 1, 3]. Áp dụng thuật toán sắp xếp chèn (Insertion Sort) để sắp xếp dãy C theo thứ tự tăng dần. Dãy C sẽ như thế nào sau khi phần tử "4" được chèn vào đúng vị trí trong phần mảng con đã sắp xếp?

  • A. [2, 4, 5, 6, 1, 3]
  • B. [2, 5, 4, 6, 1, 3]
  • C. [5, 2, 4, 6, 1, 3]
  • D. [2, 4, 5, 1, 6, 3]

Câu 7: Đối với một dãy số có N phần tử đã được sắp xếp theo đúng thứ tự cần sắp (tăng dần), thuật toán sắp xếp nổi bọt (Bubble Sort) sẽ thực hiện số lần so sánh và hoán đổi là bao nhiêu trong trường hợp TỐT NHẤT?

  • A. Khoảng NN/2 so sánh và NN/2 hoán đổi.
  • B. Khoảng NN/4 so sánh và NN/4 hoán đổi.
  • C. N-1 so sánh và N-1 hoán đổi.
  • D. N-1 so sánh và 0 hoán đổi.

Câu 8: Đối với một dãy số có N phần tử, thuật toán sắp xếp chọn (Selection Sort) sẽ thực hiện số lần hoán đổi (swap) là bao nhiêu trong trường hợp XẤU NHẤT?

  • A. 0 lần.
  • B. N-1 lần.
  • C. Khoảng N*N lần.
  • D. Số lần hoán đổi phụ thuộc vào thứ tự ban đầu của dãy.

Câu 9: Thuật toán sắp xếp chèn (Insertion Sort) đặc biệt hiệu quả (thực hiện ít phép so sánh và hoán đổi) trong trường hợp nào?

  • A. Dãy số đã gần như được sắp xếp.
  • B. Dãy số có thứ tự ngược hoàn toàn.
  • C. Dãy số chứa rất nhiều phần tử trùng lặp.
  • D. Dãy số có kích thước rất lớn (hàng triệu phần tử).

Câu 10: So sánh thuật toán sắp xếp nổi bọt (Bubble Sort) và sắp xếp chọn (Selection Sort) cho một dãy có N phần tử. Nhận định nào sau đây là ĐÚNG về số lần hoán đổi (swap) trong trường hợp xấu nhất?

  • A. Bubble Sort luôn thực hiện ít hoán đổi hơn Selection Sort.
  • B. Selection Sort luôn thực hiện ít hoán đổi hơn Bubble Sort.
  • C. Số lần hoán đổi của cả hai thuật toán là tương đương trong trường hợp xấu nhất.
  • D. Selection Sort không thực hiện hoán đổi, chỉ di chuyển phần tử.

Câu 11: Cho dãy số D = [10, 20, 30, 40, 50]. Nếu áp dụng thuật toán sắp xếp nổi bọt (Bubble Sort) để sắp xếp dãy D theo thứ tự tăng dần, điều gì sẽ xảy ra trong lượt duyệt đầu tiên?

  • A. Phần tử 50 sẽ được chuyển về vị trí đầu tiên.
  • B. Sẽ có nhiều cặp phần tử được hoán đổi vị trí.
  • C. Không có bất kỳ cặp phần tử kề nhau nào bị hoán đổi.
  • D. Thuật toán sẽ dừng lại ngay lập tức vì dãy đã sắp xếp.

Câu 12: Khi nào thì thuật toán sắp xếp chèn (Insertion Sort) có hiệu suất kém nhất?

  • A. Dãy số có kích thước nhỏ.
  • B. Dãy số chứa nhiều phần tử trùng lặp.
  • C. Dãy số đã được sắp xếp tăng dần.
  • D. Dãy số được sắp xếp theo thứ tự ngược với thứ tự cần sắp.

Câu 13: Trong thuật toán sắp xếp chọn (Selection Sort), số lần so sánh phần tử là bao nhiêu đối với một dãy có N phần tử?

  • A. Khoảng N so sánh.
  • B. Khoảng log(N) so sánh.
  • C. Khoảng N*(N-1)/2 so sánh.
  • D. Số lần so sánh phụ thuộc vào thứ tự ban đầu của dãy.

Câu 14: Một lập trình viên cần sắp xếp một danh sách liên kết (linked list) thay vì mảng (array). Trong ba thuật toán sắp xếp đơn giản đã học (Bubble, Selection, Insertion), thuật toán nào có thể gặp khó khăn hoặc kém hiệu quả hơn khi làm việc với danh sách liên kết so với mảng?

  • A. Sắp xếp nổi bọt (Bubble Sort)
  • B. Sắp xếp chọn (Selection Sort)
  • C. Sắp xếp chèn (Insertion Sort)
  • D. Cả ba thuật toán đều gặp khó khăn như nhau.

Câu 15: Thuật toán sắp xếp nào sau đây được coi là "ổn định" (stable)? (Thuật toán ổn định là thuật toán giữ nguyên thứ tự tương đối của các phần tử bằng nhau.)

  • A. Sắp xếp chọn (Selection Sort)
  • B. Sắp xếp nhanh (Quick Sort)
  • C. Sắp xếp chèn (Insertion Sort)
  • D. Sắp xếp vun đống (Heap Sort)

Câu 16: Cho dãy số E = [4, 1, 3, 2]. Áp dụng thuật toán sắp xếp nổi bọt (Bubble Sort) để sắp xếp dãy E tăng dần. Dãy E sẽ như thế nào sau lượt duyệt thứ hai?

  • A. [1, 2, 3, 4]
  • B. [1, 3, 2, 4]
  • C. [4, 1, 3, 2]
  • D. [1, 4, 3, 2]

Câu 17: Cho dãy số F = [8, 5, 2, 6]. Áp dụng thuật toán sắp xếp chọn (Selection Sort) để sắp xếp dãy F tăng dần. Dãy F sẽ như thế nào sau khi phần tử thứ hai (tính từ đầu) đã được đặt đúng vị trí?

  • A. [2, 5, 6, 8]
  • B. [2, 8, 5, 6]
  • C. [5, 2, 8, 6]
  • D. [2, 5, 8, 6]

Câu 18: Cho dãy số G = [7, 1, 5, 12, 3]. Áp dụng thuật toán sắp xếp chèn (Insertion Sort) để sắp xếp dãy G tăng dần. Dãy G sẽ như thế nào sau khi phần tử "12" được xử lý và chèn vào đúng vị trí?

  • A. [1, 5, 7, 12, 3]
  • B. [1, 5, 7, 3, 12]
  • C. [1, 7, 5, 12, 3]
  • D. [7, 1, 5, 12, 3]

Câu 19: Tại sao thuật toán sắp xếp nổi bọt (Bubble Sort) thường không được sử dụng cho các tập dữ liệu lớn trong thực tế?

  • A. Nó đòi hỏi quá nhiều bộ nhớ.
  • B. Nó có hiệu suất kém (chậm) đối với dữ liệu lớn.
  • C. Nó không thể sắp xếp được các loại dữ liệu khác ngoài số nguyên.
  • D. Nó cần dữ liệu phải được sắp xếp một phần trước khi bắt đầu.

Câu 20: Trong các thuật toán sắp xếp đơn giản (Bubble, Selection, Insertion), thuật toán nào có số lần hoán đổi (swap) ít nhất trong trường hợp xấu nhất?

  • A. Sắp xếp chọn (Selection Sort)
  • B. Sắp xếp nổi bọt (Bubble Sort)
  • C. Sắp xếp chèn (Insertion Sort)
  • D. Cả ba thuật toán có số hoán đổi tương đương.

Câu 21: Thuật toán sắp xếp chèn (Insertion Sort) có thể được mô phỏng giống với cách con người sắp xếp một bộ bài trên tay như thế nào?

  • A. Chia bộ bài thành hai nửa và sắp xếp từng nửa.
  • B. Liên tục tìm lá bài nhỏ nhất và đưa nó về đầu bộ bài.
  • C. Giữ một phần bài đã sắp xếp và chèn từng lá bài mới vào đúng vị trí.
  • D. So sánh từng cặp lá bài kề nhau và đổi chỗ nếu sai thứ tự.

Câu 22: Khi phân tích hiệu quả của thuật toán sắp xếp, chúng ta thường quan tâm đến hai yếu tố chính là số phép so sánh và số phép hoán đổi (hoặc di chuyển). Tại sao số phép hoán đổi lại quan trọng?

  • A. Phép hoán đổi thường tốn kém tài nguyên hơn phép so sánh.
  • B. Số phép hoán đổi luôn bằng số phép so sánh.
  • C. Chỉ có số phép so sánh mới quan trọng.
  • D. Số phép hoán đổi quyết định tính ổn định của thuật toán.

Câu 23: Thuật toán sắp xếp nổi bọt (Bubble Sort) có một kỹ thuật tối ưu đơn giản là dừng thuật toán sớm nếu trong một lượt duyệt không có hoán đổi nào xảy ra. Kỹ thuật này giúp cải thiện hiệu suất đáng kể trong trường hợp nào?

  • A. Dãy số có thứ tự ngược hoàn toàn.
  • B. Dãy số đã được sắp xếp hoặc gần như sắp xếp.
  • C. Dãy số có kích thước rất lớn.
  • D. Dãy số chứa nhiều phần tử trùng lặp.

Câu 24: Cho dãy số H = [5, 3, 1, 4, 2]. Áp dụng thuật toán sắp xếp chèn (Insertion Sort) tăng dần. Dãy H sẽ như thế nào sau khi phần tử "1" được chèn vào đúng vị trí?

  • A. [1, 5, 3, 4, 2]
  • B. [3, 1, 5, 4, 2]
  • C. [1, 3, 4, 5, 2]
  • D. [1, 3, 5, 4, 2]

Câu 25: Trong thuật toán sắp xếp chọn (Selection Sort), phần tử nào được đảm bảo sẽ nằm đúng vị trí cuối cùng của nó sau lượt duyệt (pass) đầu tiên?

  • A. Phần tử nhỏ nhất trong dãy ban đầu.
  • B. Phần tử lớn nhất trong dãy ban đầu.
  • C. Phần tử ở vị trí cuối cùng của dãy ban đầu.
  • D. Không có phần tử nào được đảm bảo ở vị trí cuối cùng chỉ sau lượt duyệt đầu tiên.

Câu 26: Bạn cần sắp xếp một danh sách rất nhỏ (khoảng dưới 20 phần tử). Trong các thuật toán sắp xếp đơn giản, thuật toán nào thường được ưu tiên vì sự đơn giản trong cài đặt và hiệu suất chấp nhận được với dữ liệu nhỏ?

  • A. Sắp xếp nhanh (Quick Sort)
  • B. Sắp xếp trộn (Merge Sort)
  • C. Sắp xếp chèn (Insertion Sort)
  • D. Sắp xếp vun đống (Heap Sort)

Câu 27: Khi so sánh hiệu suất của các thuật toán sắp xếp đơn giản, yếu tố nào thường được coi là ít quan trọng hơn trong phân tích độ phức tạp O(N^2)?

  • A. Các hằng số và số hạng bậc thấp trong công thức tính số bước.
  • B. Số lượng phần tử (N) của dãy.
  • C. Số phép so sánh.
  • D. Số phép hoán đổi.

Câu 28: Thuật toán sắp xếp nào sau đây KHÔNG đảm bảo rằng phần tử lớn nhất trong phần chưa sắp xếp sẽ được đưa về cuối phần chưa sắp xếp sau mỗi lượt duyệt hoàn chỉnh?

  • A. Sắp xếp nổi bọt (Bubble Sort)
  • B. Sắp xếp chọn (Selection Sort)
  • C. Sắp xếp chèn (Insertion Sort)
  • D. Cả ba thuật toán đều đảm bảo điều đó.

Câu 29: Một giáo viên yêu cầu học sinh viết chương trình sắp xếp một danh sách điểm của lớp (khoảng 40 học sinh). Thuật toán sắp xếp đơn giản nào là lựa chọn hợp lý nhất để giới thiệu cho học sinh vì sự dễ hiểu và cài đặt?

  • A. Sắp xếp nổi bọt (Bubble Sort)
  • B. Sắp xếp nhanh (Quick Sort)
  • C. Sắp xếp trộn (Merge Sort)
  • D. Sắp xếp vun đống (Heap Sort)

Câu 30: Cho dãy số I = [15, 10, 20, 5]. Áp dụng thuật toán sắp xếp chọn (Selection Sort) tăng dần. Dãy I sẽ như thế nào sau lượt duyệt thứ hai (chọn và hoán đổi để đặt phần tử thứ hai đúng vị trí)?

  • A. [5, 10, 15, 20]
  • B. [5, 10, 20, 15]
  • C. [10, 5, 20, 15]
  • D. [5, 15, 20, 10]

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 07

Câu 1: Mục đích chính của các thuật toán sắp xếp là gì?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 07

Câu 2: Cho dãy số A = [6, 3, 8, 1, 5]. Áp dụng thuật toán sắp xếp nổi bọt (Bubble Sort) để sắp xếp dãy A theo thứ tự tăng dần. Dãy A sẽ như thế nào sau LƯỢT duyệt (pass) đầu tiên?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 07

Câu 3: Thuật toán sắp xếp nào sau đây hoạt động dựa trên nguyên tắc liên tục tìm phần tử nhỏ nhất (hoặc lớn nhất) trong phần chưa được sắp xếp và đưa nó về đúng vị trí ở đầu phần đã sắp xếp?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 07

Câu 4: Cho dãy số B = [7, 4, 9, 2, 5]. Áp dụng thuật toán sắp xếp chọn (Selection Sort) để sắp xếp dãy B theo thứ tự tăng dần. Dãy B sẽ như thế nào sau khi 2 phần tử ĐẦU TIÊN đã nằm đúng vị trí sau các bước chọn và hoán đổi?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 07

Câu 5: Thuật toán sắp xếp nào sau đây hoạt động bằng cách xây dựng mảng đã sắp xếp từng bước một, lấy các phần tử từ mảng ban đầu và chèn chúng vào đúng vị trí trong phần mảng con đã được sắp xếp?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 07

Câu 6: Cho dãy số C = [5, 2, 4, 6, 1, 3]. Áp dụng thuật toán sắp xếp chèn (Insertion Sort) để sắp xếp dãy C theo thứ tự tăng dần. Dãy C sẽ như thế nào sau khi phần tử '4' được chèn vào đúng vị trí trong phần mảng con đã sắp xếp?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 07

Câu 7: Đối với một dãy số có N phần tử đã được sắp xếp theo đúng thứ tự cần sắp (tăng dần), thuật toán sắp xếp nổi bọt (Bubble Sort) sẽ thực hiện số lần so sánh và hoán đổi là bao nhiêu trong trường hợp TỐT NHẤT?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 07

Câu 8: Đối với một dãy số có N phần tử, thuật toán sắp xếp chọn (Selection Sort) sẽ thực hiện số lần hoán đổi (swap) là bao nhiêu trong trường hợp XẤU NHẤT?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 07

Câu 9: Thuật toán sắp xếp chèn (Insertion Sort) đặc biệt hiệu quả (thực hiện ít phép so sánh và hoán đổi) trong trường hợp nào?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 07

Câu 10: So sánh thuật toán sắp xếp nổi bọt (Bubble Sort) và sắp xếp chọn (Selection Sort) cho một dãy có N phần tử. Nhận định nào sau đây là ĐÚNG về số lần hoán đổi (swap) trong trường hợp xấu nhất?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 07

Câu 11: Cho dãy số D = [10, 20, 30, 40, 50]. Nếu áp dụng thuật toán sắp xếp nổi bọt (Bubble Sort) để sắp xếp dãy D theo thứ tự tăng dần, điều gì sẽ xảy ra trong lượt duyệt đầu tiên?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 07

Câu 12: Khi nào thì thuật toán sắp xếp chèn (Insertion Sort) có hiệu suất kém nhất?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 07

Câu 13: Trong thuật toán sắp xếp chọn (Selection Sort), số lần so sánh phần tử là bao nhiêu đối với một dãy có N phần tử?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 07

Câu 14: Một lập trình viên cần sắp xếp một danh sách liên kết (linked list) thay vì mảng (array). Trong ba thuật toán sắp xếp đơn giản đã học (Bubble, Selection, Insertion), thuật toán nào có thể gặp khó khăn hoặc kém hiệu quả hơn khi làm việc với danh sách liên kết so với mảng?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 07

Câu 15: Thuật toán sắp xếp nào sau đây được coi là 'ổn định' (stable)? (Thuật toán ổn định là thuật toán giữ nguyên thứ tự tương đối của các phần tử bằng nhau.)

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 07

Câu 16: Cho dãy số E = [4, 1, 3, 2]. Áp dụng thuật toán sắp xếp nổi bọt (Bubble Sort) để sắp xếp dãy E tăng dần. Dãy E sẽ như thế nào sau lượt duyệt thứ hai?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 07

Câu 17: Cho dãy số F = [8, 5, 2, 6]. Áp dụng thuật toán sắp xếp chọn (Selection Sort) để sắp xếp dãy F tăng dần. Dãy F sẽ như thế nào sau khi phần tử thứ hai (tính từ đầu) đã được đặt đúng vị trí?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 07

Câu 18: Cho dãy số G = [7, 1, 5, 12, 3]. Áp dụng thuật toán sắp xếp chèn (Insertion Sort) để sắp xếp dãy G tăng dần. Dãy G sẽ như thế nào sau khi phần tử '12' được xử lý và chèn vào đúng vị trí?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 07

Câu 19: Tại sao thuật toán sắp xếp nổi bọt (Bubble Sort) thường không được sử dụng cho các tập dữ liệu lớn trong thực tế?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 07

Câu 20: Trong các thuật toán sắp xếp đơn giản (Bubble, Selection, Insertion), thuật toán nào có số lần hoán đổi (swap) ít nhất trong trường hợp xấu nhất?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 07

Câu 21: Thuật toán sắp xếp chèn (Insertion Sort) có thể được mô phỏng giống với cách con người sắp xếp một bộ bài trên tay như thế nào?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 07

Câu 22: Khi phân tích hiệu quả của thuật toán sắp xếp, chúng ta thường quan tâm đến hai yếu tố chính là số phép so sánh và số phép hoán đổi (hoặc di chuyển). Tại sao số phép hoán đổi lại quan trọng?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 07

Câu 23: Thuật toán sắp xếp nổi bọt (Bubble Sort) có một kỹ thuật tối ưu đơn giản là dừng thuật toán sớm nếu trong một lượt duyệt không có hoán đổi nào xảy ra. Kỹ thuật này giúp cải thiện hiệu suất đáng kể trong trường hợp nào?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 07

Câu 24: Cho dãy số H = [5, 3, 1, 4, 2]. Áp dụng thuật toán sắp xếp chèn (Insertion Sort) tăng dần. Dãy H sẽ như thế nào sau khi phần tử '1' được chèn vào đúng vị trí?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 07

Câu 25: Trong thuật toán sắp xếp chọn (Selection Sort), phần tử nào được đảm bảo sẽ nằm đúng vị trí cuối cùng của nó sau lượt duyệt (pass) đầu tiên?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 07

Câu 26: Bạn cần sắp xếp một danh sách rất nhỏ (khoảng dưới 20 phần tử). Trong các thuật toán sắp xếp đơn giản, thuật toán nào thường được ưu tiên vì sự đơn giản trong cài đặt và hiệu suất chấp nhận được với dữ liệu nhỏ?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 07

Câu 27: Khi so sánh hiệu suất của các thuật toán sắp xếp đơn giản, yếu tố nào thường được coi là ít quan trọng hơn trong phân tích độ phức tạp O(N^2)?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 07

Câu 28: Thuật toán sắp xếp nào sau đây KHÔNG đảm bảo rằng phần tử lớn nhất trong phần chưa sắp xếp sẽ được đưa về cuối phần chưa sắp xếp sau mỗi lượt duyệt hoàn chỉnh?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 07

Câu 29: Một giáo viên yêu cầu học sinh viết chương trình sắp xếp một danh sách điểm của lớp (khoảng 40 học sinh). Thuật toán sắp xếp đơn giản nào là lựa chọn hợp lý nhất để giới thiệu cho học sinh vì sự dễ hiểu và cài đặt?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 07

Câu 30: Cho dãy số I = [15, 10, 20, 5]. Áp dụng thuật toán sắp xếp chọn (Selection Sort) tăng dần. Dãy I sẽ như thế nào sau lượt duyệt thứ hai (chọn và hoán đổi để đặt phần tử thứ hai đúng vị trí)?

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm - Đề 08

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm - Đề 08 được xây dựng với nhiều câu hỏi chất lượng, sát với nội dung chương trình học, giúp bạn dễ dàng ôn tập và kiểm tra kiến thức hiệu quả. Hãy cùng bắt đầu làm bài tập trắc nghiệm ngay để nâng cao hiểu biết và chuẩn bị tốt cho kỳ thi sắp tới!

Câu 1: Điểm khác biệt cơ bản nhất về yêu cầu dữ liệu đầu vào giữa thuật toán tìm kiếm tuần tự (Sequential Search) và thuật toán tìm kiếm nhị phân (Binary Search) là gì?

  • A. Tìm kiếm tuần tự yêu cầu dữ liệu là số nguyên, còn tìm kiếm nhị phân thì không.
  • B. Tìm kiếm tuần tự chỉ áp dụng cho danh sách ngắn, tìm kiếm nhị phân cho danh sách dài.
  • C. Tìm kiếm tuần tự có thể áp dụng cho dữ liệu bất kỳ (đã hoặc chưa sắp xếp), còn tìm kiếm nhị phân yêu cầu dữ liệu phải được sắp xếp.
  • D. Tìm kiếm tuần tự yêu cầu dữ liệu duy nhất, còn tìm kiếm nhị phân cho phép dữ liệu trùng lặp.

Câu 2: Bạn cần tìm kiếm một từ khóa trong một tài liệu văn bản rất dài (hàng triệu ký tự) mà không biết tài liệu đó có được sắp xếp theo thứ tự nào hay không. Thuật toán tìm kiếm nào là lựa chọn phù hợp nhất trong trường hợp này?

  • A. Tìm kiếm tuần tự.
  • B. Tìm kiếm nhị phân.
  • C. Cả hai thuật toán đều không phù hợp.
  • D. Một thuật toán sắp xếp trước rồi mới tìm kiếm nhị phân.

Câu 3: Cho dãy số A = [15, 8, 22, 5, 30, 12]. Khi tìm kiếm giá trị K = 30 bằng thuật toán tìm kiếm tuần tự, thuật toán sẽ thực hiện bao nhiêu phép so sánh (so sánh giá trị phần tử với K) cho đến khi tìm thấy?

  • A. 3
  • B. 4
  • C. 5
  • D. 6

Câu 4: Tại sao thuật toán tìm kiếm nhị phân lại hiệu quả hơn đáng kể so với tìm kiếm tuần tự khi áp dụng cho các danh sách dữ liệu lớn đã được sắp xếp?

  • A. Vì tìm kiếm nhị phân sử dụng nhiều bộ nhớ hơn.
  • B. Vì mỗi bước lặp, tìm kiếm nhị phân loại bỏ được một nửa số phần tử còn lại trong phạm vi tìm kiếm.
  • C. Vì tìm kiếm nhị phân chỉ hoạt động trên dữ liệu số.
  • D. Vì tìm kiếm nhị phân luôn tìm thấy phần tử ở vị trí đầu tiên.

Câu 5: Điều kiện tiên quyết bắt buộc để có thể áp dụng thuật toán tìm kiếm nhị phân là gì?

  • A. Danh sách phải có ít nhất 100 phần tử.
  • B. Các phần tử trong danh sách phải là số nguyên dương.
  • C. Danh sách dữ liệu phải được sắp xếp (tăng dần hoặc giảm dần).
  • D. Phần tử cần tìm phải nằm ở nửa đầu của danh sách.

Câu 6: Cho dãy số đã sắp xếp A = [2, 5, 8, 12, 16, 23, 38, 56, 72, 91]. Khi tìm kiếm giá trị K = 23 bằng thuật toán tìm kiếm nhị phân, phần tử nào sẽ được so sánh ở bước lặp thứ hai (sau bước so sánh phần tử giữa ban đầu)?

  • A. 8
  • B. 12
  • C. 16
  • D. 38

Câu 7: Trong trường hợp xấu nhất khi sử dụng thuật toán tìm kiếm tuần tự trên một danh sách gồm N phần tử, số lượng phép so sánh cần thiết để xác định một phần tử không có trong danh sách là bao nhiêu?

  • A. N
  • B. N/2
  • C. log₂N
  • D. 1

Câu 8: Trong trường hợp tốt nhất khi sử dụng thuật toán tìm kiếm nhị phân trên một danh sách đã sắp xếp gồm N phần tử, số lượng phép so sánh cần thiết để tìm thấy một phần tử là bao nhiêu?

  • A. N
  • B. log₂N
  • C. N/2
  • D. 1

Câu 9: Bạn đang sử dụng một ứng dụng từ điển trên điện thoại. Khi bạn gõ một từ để tra cứu, ứng dụng hiển thị kết quả gần như ngay lập tức từ một cơ sở dữ liệu từ vựng rất lớn đã được sắp xếp theo thứ tự chữ cái. Nguyên tắc tìm kiếm nào có khả năng cao nhất được ứng dụng này sử dụng?

  • A. Tìm kiếm tuần tự.
  • B. Tìm kiếm nhị phân.
  • C. Một thuật toán sắp xếp.
  • D. Chỉ đơn giản là duyệt toàn bộ danh sách.

Câu 10: Nếu một danh sách dữ liệu đã được sắp xếp theo thứ tự giảm dần, để áp dụng thuật toán tìm kiếm nhị phân, bạn cần điều chỉnh logic như thế nào?

  • A. Thay đổi hướng so sánh: nếu phần tử giữa nhỏ hơn giá trị cần tìm thì tìm ở nửa bên trái, nếu lớn hơn thì tìm ở nửa bên phải.
  • B. Thuật toán tìm kiếm nhị phân không thể áp dụng cho danh sách giảm dần.
  • C. Chỉ cần đảo ngược thứ tự danh sách thành tăng dần trước khi tìm kiếm.
  • D. Không cần thay đổi gì, thuật toán vẫn hoạt động bình thường.

Câu 11: Cho dãy số A = [10, 4, 8, 15, 6]. Khi tìm kiếm giá trị K = 8 bằng thuật toán tìm kiếm tuần tự, chỉ số (index) của phần tử được tìm thấy là bao nhiêu (giả sử chỉ số bắt đầu từ 0)?

  • A. 1
  • B. 2
  • C. 3
  • D. 4

Câu 12: Cho dãy số đã sắp xếp A = [5, 10, 15, 20, 25, 30]. Khi tìm kiếm giá trị K = 20 bằng thuật toán tìm kiếm nhị phân, chỉ số (index) của phần tử được tìm thấy là bao nhiêu (giả sử chỉ số bắt đầu từ 0)?

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

Câu 13: Trong bài toán

  • A. Chỉ thông tin thời tiết của thành phố Hà Nội.
  • B. Toàn bộ dữ liệu thời tiết mà trang web đó cung cấp (của tất cả các địa điểm và thời gian).
  • C. Tên của thành phố Hà Nội.
  • D. Kết quả dự báo thời tiết của Hà Nội.

Câu 14: So sánh số bước (phép so sánh) trong trường hợp xấu nhất khi tìm kiếm trên một danh sách 1000 phần tử đã sắp xếp bằng tìm kiếm tuần tự và tìm kiếm nhị phân. Nhận xét nào sau đây là đúng?

  • A. Tìm kiếm tuần tự và tìm kiếm nhị phân có số bước tương đương nhau.
  • B. Tìm kiếm tuần tự cần ít bước hơn nhiều so với tìm kiếm nhị phân.
  • C. Tìm kiếm nhị phân cần ít bước hơn nhiều so với tìm kiếm tuần tự (khoảng log₂1000 so với 1000).
  • D. Tìm kiếm nhị phân cần nhiều bước hơn nhưng các bước đơn giản hơn.

Câu 15: Cho dãy số đã sắp xếp A = [10, 20, 30, 40, 50]. Tìm kiếm giá trị K = 35 bằng thuật toán tìm kiếm nhị phân. Sau khi thuật toán kết thúc mà không tìm thấy giá trị 35, điều gì cho thấy giá trị đó không có trong danh sách?

  • A. Khoảng tìm kiếm (giới hạn dưới và giới hạn trên) trở nên rỗng hoặc giới hạn dưới vượt quá giới hạn trên.
  • B. Thuật toán dừng lại ở phần tử đầu tiên.
  • C. Thuật toán dừng lại ở phần tử cuối cùng.
  • D. Số lần so sánh đạt đến một giới hạn cố định.

Câu 16: Điều gì xảy ra nếu bạn áp dụng thuật toán tìm kiếm nhị phân trên một danh sách dữ liệu chưa được sắp xếp?

  • A. Thuật toán sẽ hoạt động bình thường nhưng chậm hơn.
  • B. Thuật toán sẽ luôn tìm thấy phần tử cần tìm nếu nó tồn tại.
  • C. Thuật toán sẽ báo lỗi ngay lập tức.
  • D. Thuật toán có thể không tìm thấy phần tử cần tìm ngay cả khi nó tồn tại trong danh sách.

Câu 17: Khái niệm

  • A. Chia giá trị cần tìm thành hai phần.
  • B. Chia số lượng phép so sánh làm đôi.
  • C. Chia khoảng tìm kiếm hiện tại (phần danh sách đang xét) thành hai nửa dựa trên phần tử giữa.
  • D. Chia danh sách ban đầu thành hai danh sách con.

Câu 18: Trong trường hợp nào thuật toán tìm kiếm tuần tự có thể là lựa chọn tốt hơn hoặc duy nhất khả thi so với tìm kiếm nhị phân?

  • A. Khi danh sách dữ liệu chưa được sắp xếp hoặc có kích thước rất nhỏ.
  • B. Khi cần tìm kiếm nhiều lần trên cùng một danh sách.
  • C. Khi danh sách dữ liệu rất lớn và đã được sắp xếp.
  • D. Khi phần tử cần tìm chắc chắn nằm ở cuối danh sách.

Câu 19: Cho dãy số A = [50, 30, 70, 10, 90]. Khi tìm kiếm giá trị K = 40 bằng thuật toán tìm kiếm tuần tự, thuật toán sẽ thực hiện bao nhiêu phép so sánh cho đến khi xác định giá trị 40 không có trong dãy?

  • A. 3
  • B. 4
  • C. 5
  • D. 6

Câu 20: Mục đích chính của bài toán tìm kiếm là gì?

  • A. Sắp xếp lại dữ liệu theo một thứ tự nhất định.
  • B. Kiểm tra xem một phần tử cụ thể có tồn tại trong một tập hợp dữ liệu hay không và (nếu có) xác định vị trí của nó.
  • C. Thêm các phần tử mới vào tập hợp dữ liệu.
  • D. Xóa các phần tử không mong muốn khỏi tập hợp dữ liệu.

Câu 21: Một lập trình viên sử dụng thuật toán tìm kiếm tuần tự để tìm kiếm một bản ghi khách hàng trong một cơ sở dữ liệu chứa hàng triệu bản ghi đã được sắp xếp theo tên. Đánh giá về lựa chọn thuật toán này?

  • A. Đây là lựa chọn tối ưu vì tìm kiếm tuần tự đơn giản để cài đặt.
  • B. Lựa chọn này phù hợp vì dữ liệu đã được sắp xếp.
  • C. Lựa chọn này không hiệu quả vì tìm kiếm tuần tự không thể xử lý dữ liệu lớn.
  • D. Lựa chọn này không hiệu quả vì với dữ liệu lớn đã sắp xếp, tìm kiếm nhị phân sẽ nhanh hơn rất nhiều.

Câu 22: Cho dãy số đã sắp xếp A = [2, 5, 8, 12, 16, 23, 38, 56, 72, 91]. Tìm kiếm giá trị K = 56 bằng thuật toán tìm kiếm nhị phân. Phần tử nào được so sánh ở bước lặp thứ ba?

  • A. 56
  • B. 38
  • C. 72
  • D. 91

Câu 23: Bạn có một danh sách điểm thi của học sinh trong lớp, danh sách này được nhập theo thứ tự ngẫu nhiên (không sắp xếp). Bạn muốn kiểm tra xem có học sinh nào đạt điểm 10 hay không. Thuật toán tìm kiếm nào là phù hợp nhất trong tình huống này nếu bạn không muốn mất thời gian sắp xếp danh sách?

  • A. Tìm kiếm tuần tự.
  • B. Tìm kiếm nhị phân.
  • C. Cả hai đều không phù hợp.
  • D. Chỉ có thể dùng cách kiểm tra thủ công.

Câu 24: Một công ty quản lý danh sách sản phẩm của mình trong một cơ sở dữ liệu, được sắp xếp theo mã sản phẩm. Khi khách hàng nhập mã sản phẩm để xem thông tin chi tiết, hệ thống cần tìm kiếm mã sản phẩm đó một cách nhanh chóng. Thuật toán tìm kiếm nào nên được ưu tiên sử dụng?

  • A. Tìm kiếm tuần tự.
  • B. Tìm kiếm nhị phân.
  • C. Cả hai đều có tốc độ như nhau trong trường hợp này.
  • D. Một thuật toán sắp xếp.

Câu 25: Sự khác biệt cốt lõi trong cách thu hẹp phạm vi tìm kiếm giữa tìm kiếm tuần tự và tìm kiếm nhị phân là gì?

  • A. Tìm kiếm tuần tự loại bỏ từng phần tử một từ đầu, còn tìm kiếm nhị phân loại bỏ từng phần tử một từ cuối.
  • B. Tìm kiếm tuần tự loại bỏ một nửa danh sách ở mỗi bước, còn tìm kiếm nhị phân loại bỏ từng phần tử một.
  • C. Tìm kiếm tuần tự chỉ làm việc với các số, còn tìm kiếm nhị phân làm việc với mọi loại dữ liệu.
  • D. Tìm kiếm tuần tự loại bỏ từng phần tử một từ đầu danh sách, còn tìm kiếm nhị phân loại bỏ một nửa khoảng tìm kiếm hiện tại dựa vào so sánh với phần tử giữa.

Câu 26: Khi bạn sử dụng chức năng

  • A. Chỉ tìm kiếm tuần tự trên toàn bộ cơ sở dữ liệu.
  • B. Chỉ tìm kiếm nhị phân trên toàn bộ cơ sở dữ liệu (không khả thi nếu dữ liệu không được sắp xếp hoàn hảo theo tiêu chí tìm kiếm).
  • C. Kết hợp các kỹ thuật chỉ mục (indexing) và các thuật toán tìm kiếm hiệu quả (có thể dựa trên nguyên tắc phân chia như nhị phân hoặc các cấu trúc dữ liệu chuyên biệt).
  • D. Chỉ đơn giản là duyệt qua từng hồ sơ người dùng một cách tuần tự.

Câu 27: Nếu thuật toán tìm kiếm tuần tự mất khoảng T giây để tìm kiếm trong trường hợp xấu nhất trên một danh sách N phần tử, thì ước tính thời gian cần thiết trong trường hợp xấu nhất cho một danh sách có 2N phần tử là bao nhiêu?

  • A. T/2 giây
  • B. T giây
  • C. T * log₂N giây
  • D. Khoảng 2T giây

Câu 28: Nếu thuật toán tìm kiếm nhị phân mất khoảng T giây để tìm kiếm trong trường hợp xấu nhất trên một danh sách N phần tử đã sắp xếp, thì ước tính thời gian cần thiết trong trường hợp xấu nhất cho một danh sách có N² phần tử đã sắp xếp là bao nhiêu?

  • A. T * N giây
  • B. Khoảng 2T giây (vì log₂(N²) = 2log₂N)
  • C. T² giây
  • D. T + N giây

Câu 29: Trong thuật toán tìm kiếm nhị phân, việc so sánh giá trị cần tìm với phần tử nằm ở vị trí giữa của khoảng tìm kiếm hiện tại có ý nghĩa gì?

  • A. Để xác định xem phần tử giữa có phải là phần tử cần tìm hay không.
  • B. Để xác định xem phần tử cần tìm nằm ở nửa bên trái hay nửa bên phải của khoảng tìm kiếm hiện tại (hoặc chính là phần tử giữa).
  • C. Cả đáp án 1 và 2 đều đúng.
  • D. Để xác định xem danh sách có được sắp xếp đúng thứ tự hay không.

Câu 30: Một danh sách dữ liệu ban đầu đã được sắp xếp, nhưng sau đó một vài phần tử mới được thêm vào ở các vị trí ngẫu nhiên, làm cho danh sách không còn hoàn toàn được sắp xếp nữa. Bạn cần tìm kiếm một phần tử trong danh sách này. Thuật toán nào đảm bảo tìm thấy phần tử nếu nó tồn tại, mà không cần thực hiện lại quá trình sắp xếp toàn bộ danh sách?

  • A. Tìm kiếm tuần tự.
  • B. Tìm kiếm nhị phân.
  • C. Cả hai đều không thể đảm bảo tìm thấy.
  • D. Chỉ có thể sử dụng thuật toán sắp xếp trước.

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 08

Câu 1: Điểm khác biệt cơ bản nhất về yêu cầu dữ liệu đầu vào giữa thuật toán tìm kiếm tuần tự (Sequential Search) và thuật toán tìm kiếm nhị phân (Binary Search) là gì?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 08

Câu 2: Bạn cần tìm kiếm một từ khóa trong một tài liệu văn bản rất dài (hàng triệu ký tự) mà không biết tài liệu đó có được sắp xếp theo thứ tự nào hay không. Thuật toán tìm kiếm nào là lựa chọn phù hợp nhất trong trường hợp này?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 08

Câu 3: Cho dãy số A = [15, 8, 22, 5, 30, 12]. Khi tìm kiếm giá trị K = 30 bằng thuật toán tìm kiếm tuần tự, thuật toán sẽ thực hiện bao nhiêu phép so sánh (so sánh giá trị phần tử với K) cho đến khi tìm thấy?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 08

Câu 4: Tại sao thuật toán tìm kiếm nhị phân lại hiệu quả hơn đáng kể so với tìm kiếm tuần tự khi áp dụng cho các danh sách dữ liệu lớn đã được sắp xếp?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 08

Câu 5: Điều kiện tiên quyết bắt buộc để có thể áp dụng thuật toán tìm kiếm nhị phân là gì?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 08

Câu 6: Cho dãy số đã sắp xếp A = [2, 5, 8, 12, 16, 23, 38, 56, 72, 91]. Khi tìm kiếm giá trị K = 23 bằng thuật toán tìm kiếm nhị phân, phần tử nào sẽ được so sánh ở bước lặp thứ hai (sau bước so sánh phần tử giữa ban đầu)?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 08

Câu 7: Trong trường hợp xấu nhất khi sử dụng thuật toán tìm kiếm tuần tự trên một danh sách gồm N phần tử, số lượng phép so sánh cần thiết để xác định một phần tử *không* có trong danh sách là bao nhiêu?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 08

Câu 8: Trong trường hợp tốt nhất khi sử dụng thuật toán tìm kiếm nhị phân trên một danh sách đã sắp xếp gồm N phần tử, số lượng phép so sánh cần thiết để tìm thấy một phần tử là bao nhiêu?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 08

Câu 9: Bạn đang sử dụng một ứng dụng từ điển trên điện thoại. Khi bạn gõ một từ để tra cứu, ứng dụng hiển thị kết quả gần như ngay lập tức từ một cơ sở dữ liệu từ vựng rất lớn đã được sắp xếp theo thứ tự chữ cái. Nguyên tắc tìm kiếm nào có khả năng cao nhất được ứng dụng này sử dụng?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 08

Câu 10: Nếu một danh sách dữ liệu đã được sắp xếp theo thứ tự giảm dần, để áp dụng thuật toán tìm kiếm nhị phân, bạn cần điều chỉnh logic như thế nào?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 08

Câu 11: Cho dãy số A = [10, 4, 8, 15, 6]. Khi tìm kiếm giá trị K = 8 bằng thuật toán tìm kiếm tuần tự, chỉ số (index) của phần tử được tìm thấy là bao nhiêu (giả sử chỉ số bắt đầu từ 0)?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 08

Câu 12: Cho dãy số đã sắp xếp A = [5, 10, 15, 20, 25, 30]. Khi tìm kiếm giá trị K = 20 bằng thuật toán tìm kiếm nhị phân, chỉ số (index) của phần tử được tìm thấy là bao nhiêu (giả sử chỉ số bắt đầu từ 0)?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 08

Câu 13: Trong bài toán "Tìm kiếm thông tin về thời tiết hiện tại của thành phố Hà Nội trên một trang web dự báo thời tiết", đâu là "miền dữ liệu" của bài toán này?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 08

Câu 14: So sánh số bước (phép so sánh) trong trường hợp xấu nhất khi tìm kiếm trên một danh sách 1000 phần tử đã sắp xếp bằng tìm kiếm tuần tự và tìm kiếm nhị phân. Nhận xét nào sau đây là đúng?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 08

Câu 15: Cho dãy số đã sắp xếp A = [10, 20, 30, 40, 50]. Tìm kiếm giá trị K = 35 bằng thuật toán tìm kiếm nhị phân. Sau khi thuật toán kết thúc mà không tìm thấy giá trị 35, điều gì cho thấy giá trị đó không có trong danh sách?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 08

Câu 16: Điều gì xảy ra nếu bạn áp dụng thuật toán tìm kiếm nhị phân trên một danh sách dữ liệu *chưa* được sắp xếp?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 08

Câu 17: Khái niệm "chia đôi" trong thuật toán tìm kiếm nhị phân đề cập đến việc gì?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 08

Câu 18: Trong trường hợp nào thuật toán tìm kiếm tuần tự có thể là lựa chọn tốt hơn hoặc duy nhất khả thi so với tìm kiếm nhị phân?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 08

Câu 19: Cho dãy số A = [50, 30, 70, 10, 90]. Khi tìm kiếm giá trị K = 40 bằng thuật toán tìm kiếm tuần tự, thuật toán sẽ thực hiện bao nhiêu phép so sánh cho đến khi xác định giá trị 40 không có trong dãy?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 08

Câu 20: Mục đích chính của bài toán tìm kiếm là gì?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 08

Câu 21: Một lập trình viên sử dụng thuật toán tìm kiếm tuần tự để tìm kiếm một bản ghi khách hàng trong một cơ sở dữ liệu chứa hàng triệu bản ghi đã được sắp xếp theo tên. Đánh giá về lựa chọn thuật toán này?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 08

Câu 22: Cho dãy số đã sắp xếp A = [2, 5, 8, 12, 16, 23, 38, 56, 72, 91]. Tìm kiếm giá trị K = 56 bằng thuật toán tìm kiếm nhị phân. Phần tử nào được so sánh ở bước lặp thứ ba?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 08

Câu 23: Bạn có một danh sách điểm thi của học sinh trong lớp, danh sách này được nhập theo thứ tự ngẫu nhiên (không sắp xếp). Bạn muốn kiểm tra xem có học sinh nào đạt điểm 10 hay không. Thuật toán tìm kiếm nào là phù hợp nhất trong tình huống này nếu bạn không muốn mất thời gian sắp xếp danh sách?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 08

Câu 24: Một công ty quản lý danh sách sản phẩm của mình trong một cơ sở dữ liệu, được sắp xếp theo mã sản phẩm. Khi khách hàng nhập mã sản phẩm để xem thông tin chi tiết, hệ thống cần tìm kiếm mã sản phẩm đó một cách nhanh chóng. Thuật toán tìm kiếm nào nên được ưu tiên sử dụng?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 08

Câu 25: Sự khác biệt cốt lõi trong cách thu hẹp phạm vi tìm kiếm giữa tìm kiếm tuần tự và tìm kiếm nhị phân là gì?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 08

Câu 26: Khi bạn sử dụng chức năng "Tìm kiếm bạn bè" trên một mạng xã hội, hệ thống sẽ xử lý yêu cầu tìm kiếm của bạn trên một cơ sở dữ liệu người dùng khổng lồ. Để trả về kết quả nhanh chóng, nguyên tắc tìm kiếm nào, hoặc kết hợp các nguyên tắc nào, có khả năng cao nhất được sử dụng?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 08

Câu 27: Nếu thuật toán tìm kiếm tuần tự mất khoảng T giây để tìm kiếm trong trường hợp xấu nhất trên một danh sách N phần tử, thì ước tính thời gian cần thiết trong trường hợp xấu nhất cho một danh sách có 2N phần tử là bao nhiêu?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 08

Câu 28: Nếu thuật toán tìm kiếm nhị phân mất khoảng T giây để tìm kiếm trong trường hợp xấu nhất trên một danh sách N phần tử đã sắp xếp, thì ước tính thời gian cần thiết trong trường hợp xấu nhất cho một danh sách có N² phần tử đã sắp xếp là bao nhiêu?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 08

Câu 29: Trong thuật toán tìm kiếm nhị phân, việc so sánh giá trị cần tìm với phần tử nằm ở vị trí giữa của khoảng tìm kiếm hiện tại có ý nghĩa gì?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 08

Câu 30: Một danh sách dữ liệu ban đầu đã được sắp xếp, nhưng sau đó một vài phần tử mới được thêm vào ở các vị trí ngẫu nhiên, làm cho danh sách không còn hoàn toàn được sắp xếp nữa. Bạn cần tìm kiếm một phần tử trong danh sách này. Thuật toán nào đảm bảo tìm thấy phần tử nếu nó tồn tại, mà không cần thực hiện lại quá trình sắp xếp toàn bộ danh sách?

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm - Đề 09

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm - Đề 09 được xây dựng với nhiều câu hỏi chất lượng, sát với nội dung chương trình học, giúp bạn dễ dàng ôn tập và kiểm tra kiến thức hiệu quả. Hãy cùng bắt đầu làm bài tập trắc nghiệm ngay để nâng cao hiểu biết và chuẩn bị tốt cho kỳ thi sắp tới!

Câu 1: Mục đích chính của các thuật toán sắp xếp là gì?

  • A. Tìm kiếm một phần tử cụ thể trong danh sách.
  • B. Lọc bỏ các phần tử trùng lặp khỏi danh sách.
  • C. Sắp xếp các phần tử trong danh sách theo một thứ tự nhất định (tăng dần hoặc giảm dần).
  • D. Thêm hoặc xóa phần tử khỏi danh sách.

Câu 2: Thuật toán sắp xếp nổi bọt (Bubble Sort) hoạt động dựa trên nguyên tắc nào?

  • A. So sánh và hoán đổi vị trí các cặp phần tử liền kề nếu chúng không đúng thứ tự.
  • B. Tìm phần tử nhỏ nhất (hoặc lớn nhất) trong phần chưa sắp xếp và đưa về đúng vị trí.
  • C. Xây dựng mảng con đã sắp xếp bằng cách chèn từng phần tử vào đúng vị trí.
  • D. Chia mảng thành hai nửa rồi sắp xếp từng nửa một cách đệ quy.

Câu 3: Cho mảng A = [6, 3, 8, 2, 5]. Sau khi thực hiện **một lượt (pass)** đầu tiên của thuật toán sắp xếp nổi bọt (Bubble Sort) để sắp xếp tăng dần, mảng A sẽ có trạng thái như thế nào?

  • A. [2, 3, 5, 6, 8]
  • B. [3, 6, 2, 5, 8]
  • C. [6, 3, 8, 2, 5]
  • D. [3, 6, 2, 5, 8]

Câu 4: Cho mảng A = [6, 3, 8, 2, 5]. Thuật toán sắp xếp chọn (Selection Sort) hoạt động bằng cách tìm phần tử nhỏ nhất trong phần chưa sắp xếp và đưa về đầu. Sau khi thực hiện **lần đặt phần tử đầu tiên** vào đúng vị trí, mảng A sẽ có trạng thái như thế nào?

  • A. [2, 3, 8, 6, 5]
  • B. [6, 3, 8, 2, 5]
  • C. [2, 3, 5, 6, 8]
  • D. [3, 6, 8, 2, 5]

Câu 5: Cho mảng A = [6, 3, 8, 2, 5]. Thuật toán sắp xếp chèn (Insertion Sort) hoạt động bằng cách chèn từng phần tử vào phần đã sắp xếp. Sau khi xử lý và chèn xong **phần tử thứ hai** (giá trị 3), mảng A sẽ có trạng thái như thế nào?

  • A. [3, 6, 8, 2, 5]
  • B. [3, 6, 8, 2, 5]
  • C. [6, 3, 8, 2, 5]
  • D. [2, 3, 6, 8, 5]

Câu 6: Thuật toán sắp xếp nào trong các thuật toán đơn giản (Nổi bọt, Chọn, Chèn) có hiệu suất tốt nhất trong trường hợp mảng đầu vào **đã được sắp xếp hoàn toàn**?

  • A. Sắp xếp nổi bọt (Bubble Sort) không có tối ưu.
  • B. Sắp xếp chọn (Selection Sort).
  • C. Sắp xếp chèn (Insertion Sort).
  • D. Cả ba thuật toán đều có hiệu suất như nhau trong trường hợp này.

Câu 7: Độ phức tạp thời gian trong trường hợp xấu nhất (worst-case time complexity) của các thuật toán sắp xếp đơn giản như Nổi bọt, Chọn, Chèn là gì (với n là số phần tử)?

  • A. O(n^2)
  • B. O(n log n)
  • C. O(n)
  • D. O(log n)

Câu 8: Khi sắp xếp một mảng gồm 1000 phần tử bằng thuật toán sắp xếp chọn (Selection Sort), số lượt (pass) chính mà thuật toán cần thực hiện để đưa các phần tử về đúng vị trí cuối cùng là bao nhiêu?

  • A. 1000
  • B. Khoảng log₂(1000)
  • C. 999
  • D. Không xác định được vì phụ thuộc vào trạng thái ban đầu của mảng.

Câu 9: Thuật toán sắp xếp nào trong các thuật toán đơn giản **không** thực hiện hoán đổi vị trí các phần tử liền kề một cách trực tiếp như Bubble Sort?

  • A. Sắp xếp nổi bọt (Bubble Sort).
  • B. Sắp xếp chọn (Selection Sort).
  • C. Sắp xếp chèn (Insertion Sort).
  • D. Cả ba thuật toán đều thực hiện hoán đổi liền kề.

Câu 10: Giả sử bạn cần sắp xếp một danh sách rất nhỏ (khoảng dưới 20 phần tử) và sự đơn giản trong cài đặt là ưu tiên hàng đầu. Thuật toán sắp xếp đơn giản nào thường được coi là dễ hiểu và cài đặt nhất?

  • A. Sắp xếp nổi bọt (Bubble Sort).
  • B. Sắp xếp chọn (Selection Sort).
  • C. Sắp xếp chèn (Insertion Sort).
  • D. Không có thuật toán đơn giản nào nổi bật về sự dễ cài đặt.

Câu 11: Cho mảng A = [1, 2, 3, 4, 5]. Khi áp dụng thuật toán sắp xếp chèn (Insertion Sort) để sắp xếp tăng dần, số lần hoán đổi (swap) hoặc dịch chuyển (shift) phần tử sẽ là bao nhiêu?

  • A. Nhiều nhất.
  • B. Bằng số phần tử.
  • C. Ít nhất nhưng không phải 0.
  • D. 0 (hoặc rất ít dịch chuyển nếu mảng đã sắp xếp).

Câu 12: Trong trường hợp xấu nhất (ví dụ: mảng được sắp xếp ngược), thuật toán sắp xếp nào trong các thuật toán đơn giản (Nổi bọt, Chọn, Chèn) thực hiện số lần hoán đổi **ít nhất**?

  • A. Sắp xếp nổi bọt (Bubble Sort).
  • B. Sắp xếp chọn (Selection Sort).
  • C. Sắp xếp chèn (Insertion Sort).
  • D. Số lần hoán đổi là như nhau đối với cả ba thuật toán trong trường hợp xấu nhất.

Câu 13: Cho mảng A = [7, 1, 5, 12, 3]. Sau khi kết thúc **toàn bộ quá trình** sắp xếp bằng thuật toán sắp xếp chọn (Selection Sort) để sắp xếp tăng dần, mảng A sẽ có trạng thái như thế nào?

  • A. [1, 3, 5, 7, 12]
  • B. [1, 5, 7, 3, 12]
  • C. [1, 7, 5, 12, 3]
  • D. [3, 1, 5, 7, 12]

Câu 14: Cho mảng A = [7, 1, 5, 12, 3]. Sau khi kết thúc **toàn bộ quá trình** sắp xếp bằng thuật toán sắp xếp nổi bọt (Bubble Sort) để sắp xếp tăng dần, mảng A sẽ có trạng thái như thế nào?

  • A. [7, 1, 5, 12, 3]
  • B. [1, 7, 5, 3, 12]
  • C. [1, 3, 5, 7, 12]
  • D. [1, 5, 7, 3, 12]

Câu 15: Cho mảng A = [7, 1, 5, 12, 3]. Sau khi kết thúc **toàn bộ quá trình** sắp xếp bằng thuật toán sắp xếp chèn (Insertion Sort) để sắp xếp tăng dần, mảng A sẽ có trạng thái như thế nào?

  • A. [7, 1, 5, 12, 3]
  • B. [1, 3, 5, 7, 12]
  • C. [1, 5, 7, 3, 12]
  • D. [1, 7, 5, 12, 3]

Câu 16: Một mảng được sắp xếp bằng một thuật toán đơn giản và sau vài bước, mảng có dạng: [2, 5, 8, 1, 4]. Phần tử 2, 5, 8 đã ở đúng vị trí tương đối so với nhau. Thuật toán nào có khả năng đã được sử dụng?

  • A. Sắp xếp nổi bọt (Bubble Sort).
  • B. Sắp xếp chọn (Selection Sort).
  • C. Sắp xếp chèn (Insertion Sort).
  • D. Không thể xác định chỉ với thông tin này.

Câu 17: Một mảng được sắp xếp bằng một thuật toán đơn giản và sau vài bước, mảng có dạng: [1, 3, 8, 6, 5]. Phần tử nhỏ nhất (1) đã được đưa về đầu. Thuật toán nào có khả năng đã được sử dụng?

  • A. Sắp xếp nổi bọt (Bubble Sort).
  • B. Sắp xếp chọn (Selection Sort).
  • C. Sắp xếp chèn (Insertion Sort).
  • D. Cả ba thuật toán đều có thể tạo ra trạng thái này.

Câu 18: Đặc điểm nào sau đây là **đúng** khi so sánh giữa Sắp xếp chọn (Selection Sort) và Sắp xếp nổi bọt (Bubble Sort) trên một mảng ngẫu nhiên có kích thước lớn?

  • A. Selection Sort thường thực hiện ít hoán đổi hơn Bubble Sort.
  • B. Bubble Sort luôn nhanh hơn Selection Sort.
  • C. Selection Sort có độ phức tạp thời gian tốt hơn Bubble Sort trong trường hợp xấu nhất.
  • D. Cả hai thuật toán đều có cùng số lần so sánh trong mọi trường hợp.

Câu 19: Thuật toán sắp xếp chèn (Insertion Sort) được cho là hiệu quả hơn Sắp xếp nổi bọt (Bubble Sort) và Sắp xếp chọn (Selection Sort) trong trường hợp nào?

  • A. Mảng có kích thước rất lớn.
  • B. Mảng chứa nhiều phần tử trùng lặp.
  • C. Mảng gần như đã được sắp xếp.
  • D. Mảng được sắp xếp theo thứ tự ngược hoàn toàn.

Câu 20: Khi sử dụng thuật toán sắp xếp nổi bọt (Bubble Sort), sau mỗi lượt (pass), điều gì xảy ra với phần tử lớn nhất trong phần chưa sắp xếp?

  • A. Nó
  • B. Nó được hoán đổi với phần tử đầu tiên của mảng.
  • C. Nó được chèn vào đúng vị trí trong phần đã sắp xếp.
  • D. Vị trí của nó không thay đổi trong lượt đó.

Câu 21: Thuật toán sắp xếp chọn (Selection Sort) luôn đảm bảo rằng sau k lượt (pass) đầu tiên, điều gì là đúng về k phần tử đầu tiên của mảng?

  • A. Chúng là k phần tử nhỏ nhất của mảng ban đầu và đã được sắp xếp đúng thứ tự tương đối so với nhau.
  • B. Chúng là k phần tử đầu tiên của mảng ban đầu.
  • C. Chúng là k phần tử lớn nhất của mảng ban đầu.
  • D. Chúng là k phần tử nhỏ nhất của mảng ban đầu và đã được sắp xếp đúng thứ tự cuối cùng.

Câu 22: Thuật toán sắp xếp chèn (Insertion Sort) duy trì một mảng con đã sắp xếp. Mảng con này ban đầu bao gồm bao nhiêu phần tử?

  • A. 0
  • B. 1 (phần tử đầu tiên của mảng)
  • C. 2
  • D. Tất cả các phần tử của mảng.

Câu 23: Trong thuật toán sắp xếp chèn (Insertion Sort), khi chèn một phần tử vào mảng con đã sắp xếp, các phần tử lớn hơn nó trong mảng con sẽ được thực hiện hành động gì?

  • A. Dịch chuyển sang phải một vị trí.
  • B. Dịch chuyển sang trái một vị trí.
  • C. Hoán đổi vị trí với phần tử đang chèn.
  • D. Giữ nguyên vị trí.

Câu 24: So sánh số lần so sánh giữa Sắp xếp nổi bọt (Bubble Sort) và Sắp xếp chèn (Insertion Sort) trong trường hợp xấu nhất (mảng ngược).

  • A. Bubble Sort luôn thực hiện ít so sánh hơn Insertion Sort.
  • B. Insertion Sort luôn thực hiện ít so sánh hơn Bubble Sort.
  • C. Số lần so sánh có cùng bậc O(n^2), nhưng giá trị cụ thể có thể khác nhau.
  • D. Cả hai đều thực hiện n lần so sánh.

Câu 25: Khi nào thì việc sử dụng một trong các thuật toán sắp xếp đơn giản (Nổi bọt, Chọn, Chèn) là **không** hiệu quả cho một tập dữ liệu lớn (ví dụ: hàng triệu phần tử)?

  • A. Khi dữ liệu đã được sắp xếp.
  • B. Khi dữ liệu gần được sắp xếp.
  • C. Khi yêu cầu độ chính xác cao.
  • D. Khi cần tốc độ xử lý nhanh.

Câu 26: Cho mảng A = [4, 1, 3, 2]. Sau khi kết thúc **lượt thứ hai** của thuật toán sắp xếp nổi bọt (Bubble Sort) để sắp xếp tăng dần (bắt đầu từ đầu mảng), mảng A sẽ có trạng thái như thế nào?

  • A. [1, 3, 2, 4]
  • B. [1, 2, 3, 4]
  • C. [4, 1, 3, 2]
  • D. [1, 3, 4, 2]

Câu 27: Cho mảng A = [4, 1, 3, 2]. Sau khi kết thúc **lần đặt phần tử thứ hai** vào đúng vị trí bằng thuật toán sắp xếp chọn (Selection Sort) để sắp xếp tăng dần, mảng A sẽ có trạng thái như thế nào?

  • A. [1, 4, 3, 2]
  • B. [1, 2, 3, 4]
  • C. [4, 1, 3, 2]
  • D. [1, 2, 3, 4]

Câu 28: Cho mảng A = [4, 1, 3, 2]. Sau khi xử lý và chèn xong **phần tử thứ ba** (giá trị 3) bằng thuật toán sắp xếp chèn (Insertion Sort) để sắp xếp tăng dần, mảng A sẽ có trạng thái như thế nào?

  • A. [1, 3, 4, 2]
  • B. [1, 2, 3, 4]
  • C. [4, 1, 3, 2]
  • D. [1, 4, 3, 2]

Câu 29: Khi phân tích hiệu quả của thuật toán sắp xếp, khái niệm

  • A. Thời gian thực hiện tăng tuyến tính theo số lượng phần tử (n).
  • B. Thời gian thực hiện tăng xấp xỉ bình phương số lượng phần tử (n).
  • C. Thời gian thực hiện tăng theo logarit của số lượng phần tử (n).
  • D. Thời gian thực hiện là hằng số, không phụ thuộc vào số lượng phần tử (n).

Câu 30: Giả sử bạn có một danh sách dữ liệu cần được sắp xếp rất thường xuyên, và tốc độ là yếu tố quan trọng nhất. Dựa trên hiểu biết về độ phức tạp thời gian, bạn nên chọn thuật toán sắp xếp đơn giản (O(n^2)) hay tìm hiểu các thuật toán phức tạp hơn (ví dụ: O(n log n))?

  • A. Nên tìm hiểu các thuật toán phức tạp hơn (O(n log n)) vì chúng hiệu quả hơn đáng kể với dữ liệu lớn.
  • B. Nên sử dụng các thuật toán đơn giản (O(n^2)) vì chúng dễ cài đặt hơn.
  • C. Độ phức tạp thời gian không quan trọng bằng số lần hoán đổi.
  • D. Nên chọn thuật toán dựa trên bộ nhớ sử dụng, không phải thời gian.

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 09

Câu 1: Mục đích chính của các thuật toán sắp xếp là gì?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 09

Câu 2: Thuật toán sắp xếp nổi bọt (Bubble Sort) hoạt động dựa trên nguyên tắc nào?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 09

Câu 3: Cho mảng A = [6, 3, 8, 2, 5]. Sau khi thực hiện **một lượt (pass)** đầu tiên của thuật toán sắp xếp nổi bọt (Bubble Sort) để sắp xếp tăng dần, mảng A sẽ có trạng thái như thế nào?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 09

Câu 4: Cho mảng A = [6, 3, 8, 2, 5]. Thuật toán sắp xếp chọn (Selection Sort) hoạt động bằng cách tìm phần tử nhỏ nhất trong phần chưa sắp xếp và đưa về đầu. Sau khi thực hiện **lần đặt phần tử đầu tiên** vào đúng vị trí, mảng A sẽ có trạng thái như thế nào?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 09

Câu 5: Cho mảng A = [6, 3, 8, 2, 5]. Thuật toán sắp xếp chèn (Insertion Sort) hoạt động bằng cách chèn từng phần tử vào phần đã sắp xếp. Sau khi xử lý và chèn xong **phần tử thứ hai** (giá trị 3), mảng A sẽ có trạng thái như thế nào?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 09

Câu 6: Thuật toán sắp xếp nào trong các thuật toán đơn giản (Nổi bọt, Chọn, Chèn) có hiệu suất tốt nhất trong trường hợp mảng đầu vào **đã được sắp xếp hoàn toàn**?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 09

Câu 7: Độ phức tạp thời gian trong trường hợp xấu nhất (worst-case time complexity) của các thuật toán sắp xếp đơn giản như Nổi bọt, Chọn, Chèn là gì (với n là số phần tử)?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 09

Câu 8: Khi sắp xếp một mảng gồm 1000 phần tử bằng thuật toán sắp xếp chọn (Selection Sort), số lượt (pass) chính mà thuật toán cần thực hiện để đưa các phần tử về đúng vị trí cuối cùng là bao nhiêu?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 09

Câu 9: Thuật toán sắp xếp nào trong các thuật toán đơn giản **không** thực hiện hoán đổi vị trí các phần tử liền kề một cách trực tiếp như Bubble Sort?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 09

Câu 10: Giả sử bạn cần sắp xếp một danh sách rất nhỏ (khoảng dưới 20 phần tử) và sự đơn giản trong cài đặt là ưu tiên hàng đầu. Thuật toán sắp xếp đơn giản nào thường được coi là dễ hiểu và cài đặt nhất?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 09

Câu 11: Cho mảng A = [1, 2, 3, 4, 5]. Khi áp dụng thuật toán sắp xếp chèn (Insertion Sort) để sắp xếp tăng dần, số lần hoán đổi (swap) hoặc dịch chuyển (shift) phần tử sẽ là bao nhiêu?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 09

Câu 12: Trong trường hợp xấu nhất (ví dụ: mảng được sắp xếp ngược), thuật toán sắp xếp nào trong các thuật toán đơn giản (Nổi bọt, Chọn, Chèn) thực hiện số lần hoán đổi **ít nhất**?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 09

Câu 13: Cho mảng A = [7, 1, 5, 12, 3]. Sau khi kết thúc **toàn bộ quá trình** sắp xếp bằng thuật toán sắp xếp chọn (Selection Sort) để sắp xếp tăng dần, mảng A sẽ có trạng thái như thế nào?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 09

Câu 14: Cho mảng A = [7, 1, 5, 12, 3]. Sau khi kết thúc **toàn bộ quá trình** sắp xếp bằng thuật toán sắp xếp nổi bọt (Bubble Sort) để sắp xếp tăng dần, mảng A sẽ có trạng thái như thế nào?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 09

Câu 15: Cho mảng A = [7, 1, 5, 12, 3]. Sau khi kết thúc **toàn bộ quá trình** sắp xếp bằng thuật toán sắp xếp chèn (Insertion Sort) để sắp xếp tăng dần, mảng A sẽ có trạng thái như thế nào?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 09

Câu 16: Một mảng được sắp xếp bằng một thuật toán đơn giản và sau vài bước, mảng có dạng: [2, 5, 8, 1, 4]. Phần tử 2, 5, 8 đã ở đúng vị trí tương đối so với nhau. Thuật toán nào có khả năng đã được sử dụng?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 09

Câu 17: Một mảng được sắp xếp bằng một thuật toán đơn giản và sau vài bước, mảng có dạng: [1, 3, 8, 6, 5]. Phần tử nhỏ nhất (1) đã được đưa về đầu. Thuật toán nào có khả năng đã được sử dụng?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 09

Câu 18: Đặc điểm nào sau đây là **đúng** khi so sánh giữa Sắp xếp chọn (Selection Sort) và Sắp xếp nổi bọt (Bubble Sort) trên một mảng ngẫu nhiên có kích thước lớn?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 09

Câu 19: Thuật toán sắp xếp chèn (Insertion Sort) được cho là hiệu quả hơn Sắp xếp nổi bọt (Bubble Sort) và Sắp xếp chọn (Selection Sort) trong trường hợp nào?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 09

Câu 20: Khi sử dụng thuật toán sắp xếp nổi bọt (Bubble Sort), sau mỗi lượt (pass), điều gì xảy ra với phần tử lớn nhất trong phần chưa sắp xếp?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 09

Câu 21: Thuật toán sắp xếp chọn (Selection Sort) luôn đảm bảo rằng sau k lượt (pass) đầu tiên, điều gì là đúng về k phần tử đầu tiên của mảng?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 09

Câu 22: Thuật toán sắp xếp chèn (Insertion Sort) duy trì một mảng con đã sắp xếp. Mảng con này ban đầu bao gồm bao nhiêu phần tử?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 09

Câu 23: Trong thuật toán sắp xếp chèn (Insertion Sort), khi chèn một phần tử vào mảng con đã sắp xếp, các phần tử lớn hơn nó trong mảng con sẽ được thực hiện hành động gì?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 09

Câu 24: So sánh số lần so sánh giữa Sắp xếp nổi bọt (Bubble Sort) và Sắp xếp chèn (Insertion Sort) trong trường hợp xấu nhất (mảng ngược).

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 09

Câu 25: Khi nào thì việc sử dụng một trong các thuật toán sắp xếp đơn giản (Nổi bọt, Chọn, Chèn) là **không** hiệu quả cho một tập dữ liệu lớn (ví dụ: hàng triệu phần tử)?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 09

Câu 26: Cho mảng A = [4, 1, 3, 2]. Sau khi kết thúc **lượt thứ hai** của thuật toán sắp xếp nổi bọt (Bubble Sort) để sắp xếp tăng dần (bắt đầu từ đầu mảng), mảng A sẽ có trạng thái như thế nào?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 09

Câu 27: Cho mảng A = [4, 1, 3, 2]. Sau khi kết thúc **lần đặt phần tử thứ hai** vào đúng vị trí bằng thuật toán sắp xếp chọn (Selection Sort) để sắp xếp tăng dần, mảng A sẽ có trạng thái như thế nào?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 09

Câu 28: Cho mảng A = [4, 1, 3, 2]. Sau khi xử lý và chèn xong **phần tử thứ ba** (giá trị 3) bằng thuật toán sắp xếp chèn (Insertion Sort) để sắp xếp tăng dần, mảng A sẽ có trạng thái như thế nào?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 09

Câu 29: Khi phân tích hiệu quả của thuật toán sắp xếp, khái niệm "độ phức tạp thời gian" (time complexity) O(n^2) biểu thị điều gì?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 09

Câu 30: Giả sử bạn có một danh sách dữ liệu cần được sắp xếp rất thường xuyên, và tốc độ là yếu tố quan trọng nhất. Dựa trên hiểu biết về độ phức tạp thời gian, bạn nên chọn thuật toán sắp xếp đơn giản (O(n^2)) hay tìm hiểu các thuật toán phức tạp hơn (ví dụ: O(n log n))?

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm - Đề 10

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm - Đề 10 được xây dựng với nhiều câu hỏi chất lượng, sát với nội dung chương trình học, giúp bạn dễ dàng ôn tập và kiểm tra kiến thức hiệu quả. Hãy cùng bắt đầu làm bài tập trắc nghiệm ngay để nâng cao hiểu biết và chuẩn bị tốt cho kỳ thi sắp tới!

Câu 1: Mục đích chính của các thuật toán sắp xếp là gì?

  • A. Giảm dung lượng bộ nhớ cần thiết để lưu trữ dữ liệu.
  • B. Mã hóa dữ liệu để bảo mật thông tin.
  • C. Tăng tốc độ truyền dữ liệu qua mạng.
  • D. Sắp xếp các phần tử trong danh sách theo một thứ tự nhất định (tăng dần hoặc giảm dần).

Câu 2: Thuật toán sắp xếp chọn (Selection Sort) hoạt động dựa trên nguyên tắc nào?

  • A. So sánh và hoán đổi các phần tử kề nhau cho đến khi danh sách được sắp xếp.
  • B. Chèn từng phần tử vào vị trí thích hợp trong phần danh sách đã được sắp xếp.
  • C. Tìm phần tử nhỏ nhất (hoặc lớn nhất) trong phần danh sách chưa được sắp xếp và đưa nó về đúng vị trí.
  • D. Chia danh sách thành hai nửa, sắp xếp từng nửa rồi trộn lại.

Câu 3: Cho mảng A = [5, 2, 8, 1, 9]. Sau khi thực hiện xong lượt 1 của thuật toán sắp xếp chọn (Selection Sort) theo thứ tự tăng dần, mảng A sẽ có trạng thái như thế nào?

  • A. [2, 5, 8, 1, 9]
  • B. [1, 2, 8, 5, 9]
  • C. [5, 2, 8, 1, 9]
  • D. [1, 5, 8, 2, 9]

Câu 4: Thuật toán sắp xếp nổi bọt (Bubble Sort) hoạt động dựa trên nguyên tắc nào?

  • A. So sánh và hoán đổi các cặp phần tử kề nhau nếu chúng không đúng thứ tự.
  • B. Tìm phần tử nhỏ nhất trong phần chưa sắp xếp và đưa về đầu.
  • C. Chèn phần tử hiện tại vào đúng vị trí trong phần đã sắp xếp.
  • D. Chia danh sách và sắp xếp độc lập các phần nhỏ hơn.

Câu 5: Cho mảng B = [7, 3, 9, 4]. Sau khi thực hiện xong lượt 1 của thuật toán sắp xếp nổi bọt (Bubble Sort) theo thứ tự tăng dần, mảng B sẽ có trạng thái như thế nào?

  • A. [3, 7, 9, 4]
  • B. [7, 3, 4, 9]
  • C. [3, 7, 4, 9]
  • D. [3, 4, 7, 9]

Câu 6: Thuật toán sắp xếp chèn (Insertion Sort) hoạt động dựa trên nguyên tắc nào?

  • A. Lặp lại việc tìm phần tử nhỏ nhất và đặt nó vào vị trí đầu tiên của phần chưa sắp xếp.
  • B. Xây dựng dần một danh sách con đã sắp xếp bằng cách chèn từng phần tử từ phần chưa sắp xếp vào đúng vị trí của nó.
  • C. So sánh và hoán đổi các cặp phần tử kề nhau cho đến khi không còn cặp nào sai thứ tự.
  • D. Sử dụng một trục (pivot) để phân chia danh sách thành hai phần và sắp xếp đệ quy.

Câu 7: Cho mảng C = [6, 1, 4, 8]. Sau khi thực hiện xong bước chèn phần tử thứ 2 (giá trị 1) vào phần đã sắp xếp của thuật toán sắp xếp chèn (Insertion Sort) theo thứ tự tăng dần, mảng C sẽ có trạng thái như thế nào?

  • A. [1, 6, 4, 8]
  • B. [6, 1, 4, 8]
  • C. [1, 4, 6, 8]
  • D. [6, 4, 1, 8]

Câu 8: Giả sử bạn có một danh sách gồm N phần tử. Trong trường hợp xấu nhất, thuật toán sắp xếp chọn (Selection Sort) cần khoảng bao nhiêu phép so sánh để sắp xếp danh sách đó?

  • A. N
  • B. N log N
  • C. N/2
  • D. N^2/2

Câu 9: Đối với một mảng gồm N phần tử, thuật toán sắp xếp nổi bọt (Bubble Sort) có số lần hoán đổi (swap) trong trường hợp tốt nhất (mảng đã sắp xếp) là bao nhiêu?

  • A. 0
  • B. N
  • C. N^2
  • D. N log N

Câu 10: Khi nào thì thuật toán sắp xếp chèn (Insertion Sort) thể hiện hiệu suất tốt nhất?

  • A. Khi danh sách hoàn toàn chưa được sắp xếp.
  • B. Khi danh sách có kích thước rất lớn.
  • C. Khi danh sách gần như đã được sắp xếp.
  • D. Khi danh sách chỉ chứa các phần tử duy nhất.

Câu 11: Hãy xác định thuật toán sắp xếp nào trong các thuật toán đơn giản (Chọn, Nổi bọt, Chèn) thường ít hiệu quả nhất trên các danh sách lớn và hoàn toàn ngẫu nhiên?

  • A. Sắp xếp Chèn
  • B. Sắp xếp Nổi bọt
  • C. Sắp xếp Chọn
  • D. Cả ba đều có hiệu suất tương đương trong trường hợp này.

Câu 12: Cho mảng D = [10, 5, 20, 15]. Bạn thực hiện sắp xếp nổi bọt (Bubble Sort) theo thứ tự tăng dần. Sau khi phần tử 20 đã "nổi" đến vị trí cuối cùng đúng của nó, mảng sẽ có trạng thái như thế nào?

  • A. [5, 10, 15, 20]
  • B. [10, 5, 15, 20]
  • C. [5, 10, 20, 15]
  • D. [10, 5, 20, 15] hoặc [5, 10, 20, 15] tùy số lần duyệt

Câu 13: Thuật toán sắp xếp nào trong số Sắp xếp Chọn, Sắp xếp Nổi bọt, Sắp xếp Chèn đảm bảo rằng sau k lượt thực hiện đầu tiên, k phần tử nhỏ nhất (hoặc lớn nhất) của mảng sẽ nằm ở k vị trí đầu tiên đúng của chúng (khi sắp xếp tăng dần)?

  • A. Sắp xếp Chọn
  • B. Sắp xếp Nổi bọt
  • C. Sắp xếp Chèn
  • D. Cả ba thuật toán đều không có đặc điểm này.

Câu 14: Cho mảng E = [4, 1, 3, 2]. Bạn sử dụng thuật toán sắp xếp chèn (Insertion Sort) theo thứ tự tăng dần. Sau khi chèn xong phần tử có giá trị 3 (phần tử thứ 3 ban đầu), mảng sẽ có trạng thái như thế nào?

  • A. [1, 4, 3, 2]
  • B. [1, 3, 4, 2]
  • C. [4, 1, 3, 2]
  • D. [1, 2, 3, 4]

Câu 15: So sánh Sắp xếp Nổi bọt và Sắp xếp Chèn. Trong trường hợp nào Sắp xếp Chèn thường hiệu quả hơn Sắp xếp Nổi bọt?

  • A. Khi mảng chứa rất nhiều phần tử trùng lặp.
  • B. Khi cần sắp xếp theo thứ tự giảm dần.
  • C. Khi mảng hoàn toàn không được sắp xếp.
  • D. Khi mảng đã gần được sắp xếp.

Câu 16: Thuật toán sắp xếp nào trong ba thuật toán đơn giản được giới thiệu (Chọn, Nổi bọt, Chèn) có đặc điểm là số lần hoán đổi (swap) không bao giờ vượt quá số lần hoán đổi của thuật toán sắp xếp chọn?

  • A. Sắp xếp Chọn
  • B. Sắp xếp Nổi bọt
  • C. Sắp xếp Chèn
  • D. Không có thuật toán nào có đặc điểm này.

Câu 17: Cho mảng F = [8, 3, 6, 2, 7]. Bạn áp dụng thuật toán sắp xếp chọn (Selection Sort) theo thứ tự tăng dần. Trạng thái của mảng sau khi kết thúc lượt thứ 2 là gì?

  • A. [2, 3, 6, 7, 8]
  • B. [2, 8, 6, 3, 7]
  • C. [2, 3, 6, 8, 7]
  • D. [2, 3, 8, 6, 7]

Câu 18: Khi sử dụng thuật toán sắp xếp chèn (Insertion Sort) để sắp xếp một mảng theo thứ tự tăng dần, phần tử đang được chèn sẽ được so sánh với các phần tử nào trong mảng?

  • A. Chỉ phần tử đầu tiên của mảng.
  • B. Chỉ phần tử cuối cùng của mảng.
  • C. Tất cả các phần tử trong mảng.
  • D. Các phần tử trong phần mảng đã được sắp xếp (từ phải sang trái).

Câu 19: Thuật toán sắp xếp nào trong ba thuật toán đơn giản có thể dừng sớm nếu mảng đã được sắp xếp hoàn toàn trước khi tất cả các lượt được hoàn thành?

  • A. Sắp xếp Chọn
  • B. Sắp xếp Nổi bọt
  • C. Sắp xếp Chèn
  • D. Cả ba thuật toán đều không thể dừng sớm.

Câu 20: Cho mảng G = [1, 2, 3, 4, 5]. Khi áp dụng thuật toán sắp xếp nổi bọt (Bubble Sort) theo thứ tự tăng dần, số lần hoán đổi (swap) sẽ là bao nhiêu?

  • A. 0
  • B. 4
  • C. 10
  • D. Không xác định được.

Câu 21: Tại sao thuật toán sắp xếp chọn (Selection Sort) lại có số lần hoán đổi ít hơn so với sắp xếp nổi bọt (Bubble Sort) trong trường hợp xấu nhất?

  • A. Vì nó sử dụng ít phép so sánh hơn.
  • B. Vì nó chỉ hoán đổi các phần tử kề nhau.
  • C. Vì nó chỉ thực hiện một hoán đổi duy nhất sau mỗi lượt tìm kiếm phần tử nhỏ nhất (hoặc lớn nhất).
  • D. Vì nó có thể dừng sớm khi mảng đã sắp xếp.

Câu 22: Thuật toán sắp xếp nào trong ba thuật toán đơn giản (Chọn, Nổi bọt, Chèn) thường được coi là trực quan và dễ hiểu nhất đối với người mới bắt đầu học?

  • A. Sắp xếp Chọn
  • B. Sắp xếp Nổi bọt
  • C. Sắp xếp Chèn
  • D. Cả ba đều có độ phức tạp như nhau.

Câu 23: Cho mảng H = [9, 7, 5, 3, 1]. Bạn áp dụng thuật toán sắp xếp chèn (Insertion Sort) theo thứ tự tăng dần. Sau khi kết thúc lượt chèn phần tử cuối cùng (giá trị 1), mảng sẽ có trạng thái như thế nào?

  • A. [1, 3, 5, 7, 9]
  • B. [9, 7, 5, 3, 1]
  • C. [1, 9, 7, 5, 3]
  • D. [3, 5, 7, 9, 1]

Câu 24: Khi phân tích hiệu quả của thuật toán sắp xếp, yếu tố nào sau đây không phải là yếu tố chính thường được xem xét?

  • A. Số lần so sánh giữa các phần tử.
  • B. Số lần hoán đổi (swap) các phần tử.
  • C. Lượng bộ nhớ phụ trợ cần thiết.
  • D. Màu sắc của các phần tử trong mảng.

Câu 25: Giả sử bạn cần sắp xếp một danh sách rất nhỏ (ví dụ, dưới 10 phần tử). Sự khác biệt về hiệu năng giữa Sắp xếp Chọn, Sắp xếp Nổi bọt và Sắp xếp Chèn có đáng kể không?

  • A. Không đáng kể, vì N quá nhỏ nên sự khác biệt về độ phức tạp O(N^2) không thể hiện rõ.
  • B. Rất đáng kể, thuật toán nhanh nhất sẽ vượt trội hơn nhiều.
  • C. Chỉ đáng kể nếu danh sách đã được sắp xếp ngược.
  • D. Chỉ đáng kể nếu danh sách chứa các số âm.

Câu 26: Thuật toán sắp xếp nào trong ba thuật toán đơn giản (Chọn, Nổi bọt, Chèn) có thể được mô tả như việc "sắp xếp tay" một bộ bài, nơi bạn cầm từng lá bài mới lên và chèn nó vào đúng vị trí trong các lá bài đã được sắp xếp trong tay?

  • A. Sắp xếp Chọn
  • B. Sắp xếp Nổi bọt
  • C. Sắp xếp Chèn
  • D. Cả ba đều không phù hợp với mô tả này.

Câu 27: Cho mảng I = [12, 11, 13, 5, 6]. Áp dụng sắp xếp nổi bọt (Bubble Sort) tăng dần. Sau khi kết thúc lượt duyệt thứ 3 (lượt cuối cùng của các cặp kề nhau trong 4 phần tử đầu tiên), mảng sẽ có trạng thái như thế nào?

  • A. [5, 6, 11, 12, 13]
  • B. [11, 12, 13, 5, 6]
  • C. [11, 12, 5, 6, 13]
  • D. [11, 12, 5, 13, 6] (hoán đổi 13,6) sau đó [11, 5, 12, 13, 6] (hoán đổi 12,5) sau đó [5, 11, 12, 13, 6] (hoán đổi 11,5). Lượt 3 so sánh cặp (12,5), (12,6), (13,6) -> [11, 5, 12, 6, 13] -> [11, 5, 6, 12, 13] -> [5, 11, 6, 12, 13] -> [5, 6, 11, 12, 13]. Lượt 1: [11,12,5,6,13]. Lượt 2: [11,5,6,12,13]. Lượt 3: [5,6,11,12,13]. Đáp án A là trạng thái cuối cùng. Lượt 3 chỉ duyệt 4 phần tử đầu tiên: [11,5,6,12]. So sánh (11,5)->[5,11,6,12]. So sánh (11,6)->[5,6,11,12]. So sánh (11,12)->[5,6,11,12]. Mảng sau lượt 3: [5,6,11,12,13]. Lượt 1: [11,12,5,6,13] -> [11,5,12,6,13] -> [11,5,6,12,13] -> [11,5,6,12,13]. Lượt 2: [5,11,6,12,13] -> [5,6,11,12,13] -> [5,6,11,12,13]. Lượt 3: [5,6,11,12,13] -> [5,6,11,12,13]. Mảng sau lượt 3 là [5,6,11,12,13].

Câu 28: Thuật toán sắp xếp nào trong ba thuật toán đơn giản có độ phức tạp thời gian là O(N^2) trong trường hợp xấu nhất, nhưng có thể cải thiện đáng kể (xuống O(N)) trong trường hợp tốt nhất?

  • A. Sắp xếp Chọn
  • B. Sắp xếp Nổi bọt
  • C. Sắp xếp Chèn
  • D. Cả ba đều luôn là O(N^2).

Câu 29: Một giáo viên yêu cầu học sinh tự sắp xếp danh sách tên theo thứ tự bảng chữ cái. Học sinh A tìm tên đầu tiên trong toàn bộ danh sách, ghi ra giấy, gạch tên đó khỏi danh sách ban đầu, rồi lặp lại quy trình với danh sách còn lại. Học sinh A đang mô phỏng thuật toán sắp xếp nào?

  • A. Sắp xếp Chọn
  • B. Sắp xếp Nổi bọt
  • C. Sắp xếp Chèn
  • D. Một thuật toán khác không được học.

Câu 30: Trong các thuật toán sắp xếp đơn giản (Chọn, Nổi bọt, Chèn), thuật toán nào thường được sử dụng làm bước con trong các thuật toán sắp xếp phức tạp hơn (như Quicksort hoặc Mergesort) để xử lý các mảng con nhỏ?

  • A. Sắp xếp Chọn
  • B. Sắp xếp Nổi bọt
  • C. Sắp xếp Chèn
  • D. Không có thuật toán nào trong số này.

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 10

Câu 1: Mục đích chính của các thuật toán sắp xếp là gì?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 10

Câu 2: Thuật toán sắp xếp chọn (Selection Sort) hoạt động dựa trên nguyên tắc nào?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 10

Câu 3: Cho mảng A = [5, 2, 8, 1, 9]. Sau khi thực hiện xong *lượt 1* của thuật toán sắp xếp chọn (Selection Sort) theo thứ tự tăng dần, mảng A sẽ có trạng thái như thế nào?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 10

Câu 4: Thuật toán sắp xếp nổi bọt (Bubble Sort) hoạt động dựa trên nguyên tắc nào?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 10

Câu 5: Cho mảng B = [7, 3, 9, 4]. Sau khi thực hiện xong *lượt 1* của thuật toán sắp xếp nổi bọt (Bubble Sort) theo thứ tự tăng dần, mảng B sẽ có trạng thái như thế nào?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 10

Câu 6: Thuật toán sắp xếp chèn (Insertion Sort) hoạt động dựa trên nguyên tắc nào?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 10

Câu 7: Cho mảng C = [6, 1, 4, 8]. Sau khi thực hiện xong *bước chèn phần tử thứ 2* (giá trị 1) vào phần đã sắp xếp của thuật toán sắp xếp chèn (Insertion Sort) theo thứ tự tăng dần, mảng C sẽ có trạng thái như thế nào?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 10

Câu 8: Giả sử bạn có một danh sách gồm N phần tử. Trong trường hợp xấu nhất, thuật toán sắp xếp chọn (Selection Sort) cần khoảng bao nhiêu phép so sánh để sắp xếp danh sách đó?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 10

Câu 9: Đối với một mảng gồm N phần tử, thuật toán sắp xếp nổi bọt (Bubble Sort) có số lần hoán đổi (swap) trong trường hợp tốt nhất (mảng đã sắp xếp) là bao nhiêu?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 10

Câu 10: Khi nào thì thuật toán sắp xếp chèn (Insertion Sort) thể hiện hiệu suất tốt nhất?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 10

Câu 11: Hãy xác định thuật toán sắp xếp nào trong các thuật toán đơn giản (Chọn, Nổi bọt, Chèn) thường ít hiệu quả nhất trên các danh sách lớn và hoàn toàn ngẫu nhiên?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 10

Câu 12: Cho mảng D = [10, 5, 20, 15]. Bạn thực hiện sắp xếp nổi bọt (Bubble Sort) theo thứ tự tăng dần. Sau khi phần tử 20 đã 'nổi' đến vị trí cuối cùng đúng của nó, mảng sẽ có trạng thái như thế nào?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 10

Câu 13: Thuật toán sắp xếp nào trong số Sắp xếp Chọn, Sắp xếp Nổi bọt, Sắp xếp Chèn đảm bảo rằng sau *k* lượt thực hiện đầu tiên, *k* phần tử nhỏ nhất (hoặc lớn nhất) của mảng sẽ nằm ở *k* vị trí đầu tiên đúng của chúng (khi sắp xếp tăng dần)?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 10

Câu 14: Cho mảng E = [4, 1, 3, 2]. Bạn sử dụng thuật toán sắp xếp chèn (Insertion Sort) theo thứ tự tăng dần. Sau khi chèn xong phần tử có giá trị 3 (phần tử thứ 3 ban đầu), mảng sẽ có trạng thái như thế nào?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 10

Câu 15: So sánh Sắp xếp Nổi bọt và Sắp xếp Chèn. Trong trường hợp nào Sắp xếp Chèn thường hiệu quả hơn Sắp xếp Nổi bọt?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 10

Câu 16: Thuật toán sắp xếp nào trong ba thuật toán đơn giản được giới thiệu (Chọn, Nổi bọt, Chèn) có đặc điểm là số lần hoán đổi (swap) không bao giờ vượt quá số lần hoán đổi của thuật toán sắp xếp chọn?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 10

Câu 17: Cho mảng F = [8, 3, 6, 2, 7]. Bạn áp dụng thuật toán sắp xếp chọn (Selection Sort) theo thứ tự tăng dần. Trạng thái của mảng sau khi kết thúc lượt thứ 2 là gì?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 10

Câu 18: Khi sử dụng thuật toán sắp xếp chèn (Insertion Sort) để sắp xếp một mảng theo thứ tự tăng dần, phần tử đang được chèn sẽ được so sánh với các phần tử nào trong mảng?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 10

Câu 19: Thuật toán sắp xếp nào trong ba thuật toán đơn giản có thể dừng sớm nếu mảng đã được sắp xếp hoàn toàn trước khi tất cả các lượt được hoàn thành?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 10

Câu 20: Cho mảng G = [1, 2, 3, 4, 5]. Khi áp dụng thuật toán sắp xếp nổi bọt (Bubble Sort) theo thứ tự tăng dần, số lần hoán đổi (swap) sẽ là bao nhiêu?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 10

Câu 21: Tại sao thuật toán sắp xếp chọn (Selection Sort) lại có số lần hoán đổi ít hơn so với sắp xếp nổi bọt (Bubble Sort) trong trường hợp xấu nhất?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 10

Câu 22: Thuật toán sắp xếp nào trong ba thuật toán đơn giản (Chọn, Nổi bọt, Chèn) thường được coi là trực quan và dễ hiểu nhất đối với người mới bắt đầu học?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 10

Câu 23: Cho mảng H = [9, 7, 5, 3, 1]. Bạn áp dụng thuật toán sắp xếp chèn (Insertion Sort) theo thứ tự tăng dần. Sau khi kết thúc lượt chèn phần tử cuối cùng (giá trị 1), mảng sẽ có trạng thái như thế nào?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 10

Câu 24: Khi phân tích hiệu quả của thuật toán sắp xếp, yếu tố nào sau đây *không* phải là yếu tố chính thường được xem xét?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 10

Câu 25: Giả sử bạn cần sắp xếp một danh sách rất nhỏ (ví dụ, dưới 10 phần tử). Sự khác biệt về hiệu năng giữa Sắp xếp Chọn, Sắp xếp Nổi bọt và Sắp xếp Chèn có đáng kể không?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 10

Câu 26: Thuật toán sắp xếp nào trong ba thuật toán đơn giản (Chọn, Nổi bọt, Chèn) có thể được mô tả như việc 'sắp xếp tay' một bộ bài, nơi bạn cầm từng lá bài mới lên và chèn nó vào đúng vị trí trong các lá bài đã được sắp xếp trong tay?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 10

Câu 27: Cho mảng I = [12, 11, 13, 5, 6]. Áp dụng sắp xếp nổi bọt (Bubble Sort) tăng dần. Sau khi kết thúc lượt duyệt thứ 3 (lượt cuối cùng của các cặp kề nhau trong 4 phần tử đầu tiên), mảng sẽ có trạng thái như thế nào?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 10

Câu 28: Thuật toán sắp xếp nào trong ba thuật toán đơn giản có độ phức tạp thời gian là O(N^2) trong trường hợp xấu nhất, nhưng có thể cải thiện đáng kể (xuống O(N)) trong trường hợp tốt nhất?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 10

Câu 29: Một giáo viên yêu cầu học sinh tự sắp xếp danh sách tên theo thứ tự bảng chữ cái. Học sinh A tìm tên đầu tiên trong toàn bộ danh sách, ghi ra giấy, gạch tên đó khỏi danh sách ban đầu, rồi lặp lại quy trình với danh sách còn lại. Học sinh A đang mô phỏng thuật toán sắp xếp nào?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 19: Bài toán tìm kiếm

Tags: Bộ đề 10

Câu 30: Trong các thuật toán sắp xếp đơn giản (Chọn, Nổi bọt, Chèn), thuật toán nào thường được sử dụng làm bước con trong các thuật toán sắp xếp phức tạp hơn (như Quicksort hoặc Mergesort) để xử lý các mảng con nhỏ?

Viết một bình luận