30/09/2018, 18:21
[Giúp đỡ]Phân tích thuật toán Kadane
Hiện em đang làm bài tập về phân tích thuật toán Kadane code thì em đã làm được nhưng có điều là về phân tích thuật toán thì em chưa hiểu lắm về nó. Cụ thể là làm sao để tìm được độ phức tạp của một thuật toán ? (em đã search GG rồi cơ mà đọc vẫn chưa hiểu)
Có ví dụ càng tốt ạ .
Bài liên quan
Độ phức tạp người ta thường đếm phép so sánh. Lấy đoạn code của python
Giả sử số phần tử trong A là n.
Phép max là 1 phép so sánh. Trong vòng lặp có 2 phép max, vòng lặp được duyệt n lần, mỗi phần tử duyệt một lần -> Có tổng cộng 2n phép so sánh. 2n < a*n, với a = 3, do đó 2n thuộc nhóm O(n).
-> Thuật toán có độ phức tạp O(n).