Độ phức tạp về thời gian cho bạn biết thuật toán của bạn phải làm bao nhiêu công việc hơn, tăng hoặc lấy một số hệ số không đổi.
Vì vậy, một phức tạp ràng buộc trên của O (2 N) bằng với độ phức tạp O (23.587 N) vì định nghĩa thực tế tìm thấy ở đây
http://en.wikipedia.org/wiki/Big_O_notation
bang rằng hệ số có thể được bất kỳ số lượng bất kể có bao lớn, miễn là nó được cố định liên quan đến kích thước của đầu vào.
bởi vì bạn đang không sử dụng 'N' trong vòng lặp, bạn chỉ thêm một char vào một String, khối lượng công việc mỗi lần lặp bằng bao nhiêu lần lặp bạn có -> O (N)
nếu bạn có "stringy + = stringy;" thay vào đó nó sẽ là O (N^2) vì mỗi lần lặp bạn đang tăng gấp đôi số lượng công việc bạn phải làm
* * LƯU Ý
Tôi giả định system.out.print là một tuyên bố nguyên tử, tức là nó sẽ in tất cả các nhân vật như một hành động đơn lẻ .. nếu nó được in từng nhân vật riêng rẽ sau đó O của nó (N^2) ....
Nguồn
2013-09-08 05:24:23
Bạn đã có một vòng lặp vô hạn nếu N lớn hơn 0. Vì vậy, đó sẽ là O (Vô cực). Chức năng sẽ không hoàn thành. –
Nó không phải là một vòng lặp vô hạn. – Leigh
Độ phức tạp của các hoạt động này là O (n^2). '+ =' Là O (N) và bạn thực hiện N lần này. –