khoahoc.vietjack.com

Câu hỏi:

17/11/2024 949 Lưu

Cách nào dưới đây có độ phức tạp thời gian tuyến tính?

a) Tìm số lớn nhất trong dãy số bằng cách so sánh từng cặp.

b) Tính giai thừa của một số nguyên n bằng đệ quy.

c) Sắp xếp một dãy số bằng thuật toán Quick Sort.

d) Tìm kiếm một số trong dãy số không sắp xếp bằng cách lặp qua từng phần tử.

Quảng cáo

Trả lời:

verified Giải bởi Vietjack

a) Đúng – Độ phức tạp thời gian là O(n) vì phải duyệt qua từng phần tử để so sánh.

b) Sai – Độ phức tạp thời gian là O(n) nhưng không được coi là tuyến tính trong trường hợp này do bản chất của đệ quy liên quan đến nhiều lời gọi hàm chồng chéo.

c) Sai. Thuật toán Quick Sort có độ phức tạp thời gian trung bình là O(nlog⁡n)

d) Đúng. Tìm kiếm một số trong dãy số không sắp xếp bằng cách lặp qua từng phần tử có độ phức tạp thời gian O(n), vì phải kiểm tra tất cả n phần tử.

Đ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: A

Giải thích: Độ phức tạp thời gian chủ yếu phụ thuộc vào kích thước dữ liệu đầu vào (n). Các yếu tố khác như ngôn ngữ lập trình hay kỹ năng lập trình viên có thể ảnh hưởng đến hiệu suất thực tế nhưng không phải là yếu tố chính để xác định độ phức tạp.

Câu 2

A. Khi thực hiện một lần lặp qua n phần tử

B. Khi thực hiện hai lần lặp lồng nhau qua n phần tử
C. Khi thực hiện tìm kiếm nhị phân
D. Khi thực hiện phép cộng n số

Lời giải

Đáp án: B

Giải thích: Độ phức tạp thời gian O(n^2) xảy ra khi có hai vòng lặp lồng nhau, mỗi vòng lặp chạy qua n phần tử.

Câu 3

A. Tìm kiếm một phần tử trong danh sách

B. Tính tổng dãy số từ 1 đến n bằng công thức
C. Sắp xếp một danh sách số
D. Tính giai thừa của n

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

Câu 6

A. Phép nhân hai số

B. Phép lặp qua một dãy số
C. Phép so sánh hai giá trị
D. Phép khai thác giá trị tuyệt đối

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

Câu 7

A. Tính toán độ phức tạp thực tế của một thuật toán

B. Tìm số phép toán tối thiểu và tối đa cần thiết cho một thuật toán
C. Xác định ước lượng trung bình cho tất cả các trường hợp
D. Lựa chọn phương pháp ước lượng đảm bảo không vượt quá giá trị ước tính

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