Ai đó có thể giải thích sự khác biệt giữa các thuật toán thời gian đa thức, thời gian không đa thức và thời gian hàm mũ không?
Ví dụ, nếu một thuật toán mất O (n ^ 2) thời gian, thì nó thuộc loại nào?
Ai đó có thể giải thích sự khác biệt giữa các thuật toán thời gian đa thức, thời gian không đa thức và thời gian hàm mũ không?
Ví dụ, nếu một thuật toán mất O (n ^ 2) thời gian, thì nó thuộc loại nào?
Câu trả lời:
Kiểm tra điều này .
Cấp số nhân kém hơn đa thức.
O (n ^ 2) thuộc loại bậc hai, là một loại đa thức (trường hợp đặc biệt của số mũ bằng 2) và tốt hơn cấp số nhân.
Mũ là nhiều tồi tệ hơn đa thức. Nhìn vào cách các chức năng phát triển
n = 10 | 100 | 1000
n^2 = 100 | 10000 | 1000000
k^n = k^10 | k^100 | k^1000
k ^ 1000 là đặc biệt lớn trừ khi k nhỏ hơn 1.1. Giống như, một cái gì đó giống như mỗi hạt trong vũ trụ sẽ phải thực hiện 100 tỷ tỷ tỷ hoạt động mỗi giây trong hàng nghìn tỷ tỷ tỷ năm để hoàn thành điều đó.
Tôi đã không tính toán nó ra, nhưng nó rất LỚN.
Dưới đây là một số hàm Big-O phổ biến trong khi phân tích thuật toán.
(n = kích thước của đầu vào, c = một số hằng số)
Đây là biểu đồ mô hình đại diện cho độ phức tạp Big-O của một số hàm
chúc mừng :-)
đồ thị tín dụng http://bigocheatsheet.com/
O (n ^ 2) là thời gian đa thức. Đa thức là f (n) = n ^ 2. Mặt khác, O (2 ^ n) là thời gian hàm mũ, trong đó hàm số mũ được ngụ ý là f (n) = 2 ^ n. Sự khác biệt là liệu hàm của n đặt n vào cơ số của lũy thừa hay trong chính số mũ.
Bất kỳ hàm tăng trưởng theo cấp số nhân nào sẽ phát triển nhanh hơn đáng kể (dài hạn) so với bất kỳ hàm đa thức nào, do đó, sự phân biệt có liên quan đến hiệu quả của một thuật toán, đặc biệt là đối với các giá trị lớn của n.
Hàm mũ (Bạn có một hàm số mũ nếu TỐI THIỂU MỘT CHI PHÍ phụ thuộc vào một tham số):
Đa thức (Bạn có một hàm đa thức nếu KHÔNG PHỤ THUỘC vào một số tham số hàm):
o (n sequre) là độ phức tạp thời gian tối đa trong khi o (2 ^ n) là độ phức tạp thời gian hàm mũ nếu p = np khi trường hợp tốt nhất, trong trường hợp xấu nhất p = np không bằng giá trị khi kích thước đầu vào n tăng quá lâu hoặc bộ chỉnh đầu vào tăng như vậy Còn trường hợp xấu nhất của nó và việc xử lý nên tốc độ tăng độ phức tạp tăng lên và phụ thuộc vào kích thước n của đầu vào khi đầu vào nhỏ. Nó là đa lượng khi kích thước đầu vào lớn và lớn nên p = np không bằng nhau có nghĩa là tốc độ tăng trưởng phụ thuộc vào kích thước của đầu vào "N ". tối ưu hóa, sat, clique và thiết lập độc lập cũng đáp ứng theo cấp số nhân đến đa lượng.