Vận dụngCâ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âu hỏi:
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.
Câu trả lời:
Người trả lời: GV. Đỗ Văn Phương
Để 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 chương trình như đã cung cấp trong đề bài.2. Chạy chương trình với các giá trị n khác nhau, có thể bắt đầu từ giá trị nhỏ và tăng dần để quan sát sự khác biệt trong thời gian thực thi của hai chương trình.3. Thực hiện đánh giá độ phức tạp thời gian của hai chương trình: - Chương trình 1 chỉ thực hiện một vòng lặp for với độ phức tạp thời gian là O(1). - Chương trình 2 thực hiện hai vòng lặp for lồng nhau nên có độ phức tạp thời gian là O(n^2).4. Vẽ đồ thị thể hiện sự khác biệt về thời gian thực thi giữa hai chương trình với các giá trị n khác nhau để rõ ràng hơn.Câu trả lời cho câu hỏi trên là:- Độ phức tạp thời gian của chương trình 1 là O(1), chỉ phụ thuộc vào giá trị n nhỏ và không tăng thêm nếu n tăng lên.- Độ phức tạp thời gian của chương trình 2 là O(n^2), tăng theo bậc hai của giá trị n.- Sự khác biệt trong độ phức tạp thời gian giữa hai chương trình là rất lớn, đặc biệt khi giá trị n lớn, chương trình 2 sẽ mất nhiều thời gian hơn để thực thi so với chương trình 1.
Câu hỏi liên quan:
- Khởi độngCâ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...
- 1. Đánh giá thời gian thực hiện chương trìnhHoạt động 1: Tìm hiểu cách đánh giá thời gian thực hiện...
- 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?
- 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?
- 2. Phân tích độ phức tạp thời gian của thuật toánHoạt động 2: Tìm hiểu khái niệm độ phức tạp thời...
- 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. Một số quy tắc thực hành tính độ phức tạp của thuật toánHoạt động 3: Tìm hiểu một số quy tắc đơn...
- 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 =...
- Luyện tậpCâu hỏi 1. Xác định độ phức tạp thời gian cho chương trình sau:n = 1000s = 0for i in...
- Luyện tậpCâ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 = 1000Sum = ...
- Vận dụngCâ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...
Bình luận (0)