điều này có thể là một câu hỏi ngớ ngẩn, nhưng tôi muốn tính toán độ phức tạp của một trong các thuật toán của tôi và tôi không chắc chắn về độ phức tạp để xem xét cho hàm memmove().Tôi có nên xem xét memmove() O (n) hoặc O (1) không?
Bạn có thể vui lòng giúp/giải thích không?
void * memmove (void * destination, const void * source, size_t num);
Vì vậy, độ phức tạp là O (num) hoặc O (1). Tôi cho rằng đó là O (num), nhưng tôi không chắc chắn vì bây giờ tôi thiếu hiểu biết về những gì đang xảy ra dưới mui xe.
Câu trả lời đúng có thể là tùy thuộc vào việc triển khai thực hiện. Bạn có thể tưởng tượng một hệ thống bất thường nơi bộ nhớ thực sự là một số đồ thị phức tạp hoặc danh sách liên kết. Trong mọi hệ thống thực, tôi biết nó tỉ lệ với num. –