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...
Câu hỏi:
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
Câu trả lời:
Người trả lời: GV. Đỗ Văn Long
Để 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 phần tử và số lần hoán đổi giữa các phần tử.1. Số lần so sánh giữa các phần tử là cố định và không phụ thuộc vào dữ liệu đầu vào. Trong thuật toán sắp xếp chọn, số lần so sánh giữa các phần tử là n(n-1)/2, với n là số phần tử trong mảng hoặc danh sách.2. Số lần hoán đổi giữa các phần tử có thể đạt tối đa n-1 lần, với n là số phần tử trong mảng hoặc danh sách.Vậy độ phức tạp thời gian của thuật toán sắp xếp chọn là O(n^2), hay n(n-1)/2 lần so sánh và tối đa n-1 lần hoán đổi giữa các phần tử.
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 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...
Bình luận (0)