Giải bài tập tin học lớp 11 định hướng KHMT kết nối tri thức bài 24 Đánh giá độ phức tạp thời gian thuật toán

Giải bài 24 Đánh giá độ phức tạp thời gian thuật toán tin học lớp 11 kết nối tri thức. Phần đáp án chuẩn, hướng dẫn giải chi tiết cho từng bài tập có trong chương trình học của sách giáo khoa. Hi vọng, các em học sinh hiểu và nắm vững kiến thức bài.

Bài tập và hướng dẫn giải

Khởi động

Câu hỏi. Quan sát và ước lượng thời gian thực hiện các đoạn chương trình 1 và 2 trong Hình 24.2. Chương trình nào chạy nhanh hơn? Vì sao?

Trả lời: Phương pháp giải:- Quan sát và so sánh các đoạn chương trình 1 và 2 để ước lượng thời gian thực hiện... Xem hướng dẫn giải chi tiết

1. Đánh giá thời gian thực hiện chương trình

Hoạt động 1: Tìm hiểu cách đánh giá thời gian thực hiện chương trình

Quan sát và thực hiện đánh giá thời gian chạy của các chương trình 1 và 2 trong Hình 24.2. Từ đó biết và hiểu được cách đánh giá thời gian thực hiện chương trình.

Trả lời: Phương pháp giải:Để đánh giá thời gian thực hiện chương trình, ta có thể sử dụng công thức tính thời... Xem hướng dẫn giải chi tiết

Câu hỏi 1. Các lệnh và đoạn chương tình sau cần chạy trong bao nhiêu đơn vị thời gian?

Giải tin học lớp 11 định hướng KHMT Kết nối bài 24 Đánh giá độ phức tạp thời gian thuật toán

Trả lời: Để giải câu hỏi trên, ta cần xác định thời gian chạy của từng lệnh và đoạn chương trình. Phương pháp... Xem hướng dẫn giải chi tiết

Câu hỏi 2. Khẳng định "Trong mọi chương trình chỉ có đúng một phép toán tích cực" lá đúng hay sai?

Trả lời: Để giải câu hỏi này, ta cần hiểu rõ về định nghĩa của phép toán tích cực trong chương trình. Một... Xem hướng dẫn giải chi tiết

2. Phân tích độ phức tạp thời gian của thuật toán

Hoạt động 2: Tìm hiểu khái niệm độ phức tạp thời gian thuật toán

Cùng trao đổi và tìm hiểu cách phân loại thuật toán dựa trên độ phức tạp thời gian thuật toán.

Trả lời: Phương pháp giải:Bước 1: Hiểu rõ khái niệm độ phức tạp thời gian của thuật toán là gì.Bước 2: Cùng... Xem hướng dẫn giải chi tiết

Câu hỏi . Tính độ phức tạp của các hàm thời gian sau:

a) Tính = 2n(n - 2) + 4.

b) Tính = $n^{3}$ + 5n - 3.

Trả lời: Để tính độ phức tạp của hàm thời gian, ta cần xác định xem hàm đó tăng nhanh như thế nào khi đầu vào... Xem hướng dẫn giải chi tiết

3. Một số quy tắc thực hành tính độ phức tạp của thuật toán

Hoạt động 3: Tìm hiểu một số quy tắc đơn giản tính độ phức tạp thời gian thuật toán

Đọc, quan sát, thảo luận để biết một số quy tắc đơn giản tính độ phức tạp thời gian thuật toán.

Trả lời: Phương pháp giải:- Đọc kỹ đề bài và hiểu rõ yêu cầu của bài toán.- Xác định quy tắc cộng và quy tắc... Xem hướng dẫn giải chi tiết

Câu hỏi.  Áp dụng các quy tác trên để tính độ phức tạp của các hàm thời gian sau:

a) Tính = $n^{3}$ + nlogn + 2n + 1.

b) Tính = 3$n^{4}$ + 2$n^{2}$logn + 10.

Trả lời: Để tính độ phức tạp của các hàm thời gian, ta cần xem xét xem hàm này tăng nhanh như thế nào khi... Xem hướng dẫn giải chi tiết

Luyện tập 

Câu hỏi 1. Xác định độ phức tạp thời gian cho chương trình sau:

n = 1000

s = 0

for i in range (n);

S = S + i(i+1)

Print (S)

Trả lời: Để giải câu hỏi trên, ta cần xác định độ phức tạp thời gian của chương trình đã cho. - Vòng for:... Xem hướng dẫn giải chi tiết

Luyện tập

Câu hỏi 2. Xác định độ phức tạp thời gian tính toán cho chương trình sau:

n = 1000

Sum = 0 

i = 1

While i <n;

i = i*2

Sum = Sum + 1

Print (Sum)

Trả lời: Độ phức tạp thời gian tính toán cho chương trình trên là O(log n), với n = 1000 thì độ phức tạp là... Xem hướng dẫn giải chi tiết

Vận dụng

Câu hỏi 1. Xác định độ phức tạp thời gian của thuật toán sắp xếp chọn đã được học trong bài 21

Trả lời: Để xác định độ phức tạp thời gian của thuật toán sắp xếp chọn, ta cần tính số lần so sánh giữa các... Xem hướng dẫn giải chi tiết

Vận dụng

Câu hỏi 2. Em hãy thiết lập chương trình và tính thời gian chạy thực tế trên máy tính của các chương trình 1 và 2 ở Hình 24.2 với các giá trị n khác nhau từ đó thấy được ý nghĩa sự khác biệt độ phức tạp thời gian của hai chương trình nay.

Trả lời: Để giải câu hỏi trên, bạn có thể thực hiện các bước sau:1. Thiết lập chương trình Python cho cả hai... Xem hướng dẫn giải chi tiết
0.13836 sec| 2257.469 kb