khoahoc.vietjack.com

Câu hỏi:

30/11/2024 2,362 Lưu

Độ phức tạp thời gian của thuật toán sắp xếp chọn SelectionSort(A) là gì?

a) O(1)O(1)O(1)

b) O(n)O(n)O(n)

c) O(nlogn)

d) O(n2)O(n^2)O(n2)

Quảng cáo

Trả lời:

verified Giải bởi Vietjack

a) Sai. O(1)O(1)O(1) là độ phức tạp hằng số, không phù hợp cho thuật toán sắp xếp do thời gian chạy phụ thuộc vào số lượng phần tử trong mảng.

b) Sai. O(n)O(n)O(n) là độ phức tạp của thuật toán sắp xếp có tính tuyến tính, không phải là sắp xếp chọn vì thuật toán này có hai vòng lặp lồng nhau.

c) Sai. O(nlog⁡n)O(n \log n)O(nlogn) là độ phức tạp thời gian của các thuật toán sắp xếp hiệu quả hơn như sắp xếp nhanh (Quick Sort) hoặc sắp xếp trộn (Merge Sort). Tuy nhiên, Selection Sort có độ phức tạp cao hơn do hai vòng lặp lồng nhau.

d) Đúng. Trong Selection Sort, với mỗi lần lặp ngoài, một phần tử nhỏ nhất từ các phần tử còn lại trong mảng sẽ được tìm thấy và đưa vào vị trí thích hợp. Quá trình tìm kiếm phần tử nhỏ nhất tốn O(n)O(n)O(n), và thực hiện nnn lần nên tổng thời gian là O(n2)O(n^2)O(n2).

Đang tải chế độ Học...

Hot: 1000+ đề thi giữa kì 1 lớp 1-12 đầy đủ các môn (Update 2026) (chỉ từ 60k). Tải ngay

ĐẶC QUYỀN VIP

Đăng ký VIP để học và luyện thi không giới hạn

Trọn bộ quyền lợi trên Vietjack, trong một tài khoản.

  • Phòng luyện thi cấp tốc: ĐGNL - ĐGTD, Tốt nghiệp THPT, Ôn vào 10, Ôn vào 6, Ôn Giữa kì/Cuối kì
  • Hơn 200K đề thi thử, đề minh hoạ, chính thức các năm
  • Với 3tr+ câu hỏi theo các mức độ Nhận biết, Thông hiểu, Vận dụng
  • Tải xuống đề thi [DOCX] với đầy đủ đáp án
  • Xem hàng ngàn bài giảng đính kèm củng cố thêm kiến thức
  • Bao gồm tất cả các bậc từ Tiểu học đến Đại học
  • Chặn hiển thị quảng cáo tăng khả năng tập trung ôn luyện
  • Đăng ký ngay

CÂU HỎI HOT CÙNG CHỦ ĐỀ

Lời giải

Đáp án: O(n)

Giải thích: Thuật toán tìm kiếm tuần tự LinearSearch duyệt qua toàn bộ mảng để tìm kiếm phần tử cần tìm. Trong trường hợp xấu nhất (khi phần tử không tồn tại trong mảng), thuật toán phải thực hiện n phép so sánh, với n là kích thước của mảng. Vì vậy, độ phức tạp thời gian của thuật toán là O(n), nghĩa là tuyến tính theo kích thước của mảng.

Lời giải

Đáp án: B

Giải thích: Trong trường hợp xấu nhất, thuật toán sắp xếp nổi bọt sẽ có độ phức tạp O(n^2) vì có hai vòng lặp lồng nhau chạy qua các phần tử.

Lời giải

Bạn cần đăng ký gói VIP ( giá chỉ từ 250K ) để làm bài, xem đáp án và lời giải chi tiết không giới hạn.

Nâng cấp VIP

Lời giải

Bạn cần đăng ký gói VIP ( giá chỉ từ 250K ) để làm bài, xem đáp án và lời giải chi tiết không giới hạn.

Nâng cấp VIP

Lời giải

Bạn cần đăng ký gói VIP ( giá chỉ từ 250K ) để làm bài, xem đáp án và lời giải chi tiết không giới hạn.

Nâng cấp VIP

Lời giải

Bạn cần đăng ký gói VIP ( giá chỉ từ 250K ) để làm bài, xem đáp án và lời giải chi tiết không giới hạn.

Nâng cấp VIP