Хтось може пояснити різницю між алгоритмами поліноміального часу, неполіноміального часу та експоненціального часу?
Наприклад, якщо алгоритм займає час O (n ^ 2), то до якої категорії він належить?
Хтось може пояснити різницю між алгоритмами поліноміального часу, неполіноміального часу та експоненціального часу?
Наприклад, якщо алгоритм займає час O (n ^ 2), то до якої категорії він належить?
Відповіді:
Перевірте це .
Експоненціальний гірший за поліном.
O (n ^ 2) потрапляє в квадратичну категорію, яка є різновидом полінома (особливий випадок показника ступеня дорівнює 2) і кращим за експоненціальний.
Експоненціальний набагато гірший за поліном. Подивіться, як зростають функції
n = 10 | 100 | 1000
n^2 = 100 | 10000 | 1000000
k^n = k^10 | k^100 | k^1000
k ^ 1000 є виключно величезним, якщо k не менше ніж приблизно 1,1. Мовляв, щось на зразок кожної частинки у Всесвіті мало б зробити 100 мільярдів мільярдів операцій в секунду протягом трильйонів мільярдів мільярдів років, щоб це зробити.
Я не розрахував, але ЦЕ ВЕЛИКИЙ.
Нижче наведено деякі загальні функції Big-O під час аналізу алгоритмів.
(n = розмір вводу, c = деяка константа)
Ось графік моделі, що представляє складність деяких функцій Big-O
ура :-)
графічні кредити http://bigocheatsheet.com/
O (n ^ 2) - поліномний час. Поліном f (n) = n ^ 2. З іншого боку, O (2 ^ n) - експоненціальний час, де мається на увазі експоненціальна функція f (n) = 2 ^ n. Різниця полягає в тому, чи функція n ставить n в основу піднесення ступеня або в саму експоненту.
Будь-яка експоненціальна функція зростання буде рости значно швидше (довгостроково), ніж будь-яка поліноміальна функція, тому розрізнення стосується ефективності алгоритму, особливо для великих значень n.
Експоненціальна (Ви маєте експоненціальну функцію, якщо МІНІМАЛЬНИЙ ОДИН ЕКСПОНЕНТ залежить від параметра):
Поліном (Ви маєте поліноміальну функцію, якщо NO EXPONENT залежить від деяких параметрів функції):
o (n sequre) - це полінімальна часова складність, тоді як o (2 ^ n) - експоненціальна часова складність, якщо p = np, коли найкращий випадок, у гіршому випадку p = np не дорівнює тому, що коли вхідний розмір n зростає настільки довгий або розмір вхідного розміру збільшується так довше його перехід у гірший випадок і обробка настільки швидкість зростання складності зростають і залежать від n розміру вхідних даних, коли вхідні дані малі, це багатозначність, коли розмір вхідних даних великий і великий, тому p = np не дорівнює, це означає, що швидкість зростання залежить від розміру вхідного матеріалу "N ". оптимізація, сат, кліка та незалежний набір також зустрічаються в експоненції до полінімальних.