Tin học 11 · Chung, Khoa học máy tính và Tin học ứng dụng
Tin họcLớp 11Phần 6. KHMT · Chủ đề 6. Kĩ thuật lập trình · Chọn định hướng, không bắt buộc THUD

Bài 24 · KHMT. Đánh giá độ phức tạp thời gian thuật toán

Mục tiêu bài học

  • Giải thích và vận dụng kiến thức về đánh giá độ phức tạp thời gian thuật toán.
  • Tạo hoặc đánh giá sản phẩm cụ thể, giải thích kết quả và kiểm tra điều kiện áp dụng.

Bài giảng

Hiểu cách hoạt động

Độ phức tạp mô tả tăng trưởng số thao tác theo kích thước đầu vào, không phải giây cố định. Tuyến tính O(n), hai vòng n×n thường O(n²), nhị phân trên dãy sắp O(log n). Cần xét thuật toán cụ thể và trường hợp tốt/xấu, không chỉ đếm số dòng mã. Bỏ hằng số khi phân loại nhưng giữ chúng khi tính số thao tác chính xác.

Làm và tự kiểm tra

Chương trình mẫu đã kiểm tra bằng thực thi trong quá trình biên soạn:

n=5
d=0
for i in range(n):
    for j in range(n):
        d+=1
print(d)

Với đầu vào cố định như chương trình, kết quả in: 25. Năm lượt ngoài, mỗi lượt5 trong, tổng25.

Ghi nhớ

Độ phức tạp mô tả tăng trưởng số thao tác theo kích thước đầu vào, không phải giây cố định.

Bài tập

Đã đúng 0/6 câu

  1. Câu 1Mức 2Trả lời ngắn

    Chương trình Python sau in ra số nào?

    n=7
    d=0
    for i in range(n): d+=1
    print(d)
    
  2. Câu 2Mức 2Trả lời ngắn

    Chương trình Python sau in ra số nào?

    n=4
    d=0
    for i in range(n):
     for j in range(n): d+=1
    print(d)
    
  3. Câu 3Mức 2Trả lời ngắn

    Chương trình Python sau in ra số nào?

    n=4
    d=0
    for i in range(n):
     for j in range(i): d+=1
    print(d)
    
  4. Câu 4Mức 2Trắc nghiệm 1 đáp án

    T(n)=3n+2, chọn cận trên tăng trưởng chặt nhất trong các lựa chọn.

  5. Câu 5Mức 2Đúng / Sai

    O(n) có nghĩa mọi máy đều chạy đúng n giây.

  6. Câu 6Mức 2Sắp xếp thứ tự

    Sắp xếp các bước theo phương pháp giải của nhiệm vụ này.

    Sắp xếp các mục theo thứ tự đúng (kéo thả hoặc dùng nút mũi tên).

    1. 1Xác định bậc tăng trưởng và trường hợp
    2. 2Đếm thao tác chính
    3. 3Chọn kích thước n
    4. 4Viết hàm số đếm
  7. Câu 7Mức 3Tự luận

    Đếm số lần tăng d trong hai vòng n×n với n=5. Viết chương trình hoàn chỉnh và kiểm tra theo dữ liệu mẫu. Người dạy chấm mã và lập luận, không so khớp kí tự mã.

    0 từ

    0/10 ảnh

    Có thể chụp nhiều trang. Ảnh được lưu cùng bài làm và giáo viên sẽ chấm trên ảnh.

    Vẽ bài làm

    Ảnh bài làm

    Cuộn chuột hoặc chụm hai ngón để phóng to · kéo để di chuyển · phím R để xoay

  8. Câu 8Mức 4Tự luận

    Hai vòng nối tiếp mỗi vòng n có giống hai vòng lồngn×n không?

    0 từ

    0/10 ảnh

    Có thể chụp nhiều trang. Ảnh được lưu cùng bài làm và giáo viên sẽ chấm trên ảnh.

    Vẽ bài làm

    Ảnh bài làm

    Cuộn chuột hoặc chụm hai ngón để phóng to · kéo để di chuyển · phím R để xoay