У мене є визначення алгоритму на місці від професора, але я його не розумію.
Алгоритми in-situ відносяться до алгоритмів, які працюють із Θ (1) пам'яттю.
Що це означає?
У мене є визначення алгоритму на місці від професора, але я його не розумію.
Алгоритми in-situ відносяться до алгоритмів, які працюють із Θ (1) пам'яттю.
Що це означає?
Відповіді:
Спочатку розпакуємо, що означає .
Big , і велика Θ , класи функцій. Там є формальне визначення тут , але для цілей даного питання, то ми говоримо , що функція F в O ( 1 ) , якщо існує постійна з , де для всіх х , е ( х ) ≤ C . Тобто f росте максимум так само швидко, як і постійну функцію.
Big- не означає дуже багато для постійних функцій, тому що, описуючи алгоритм використання часу або простору, він не набагато нижче постійного. Але пояснити, що це означає, f ∈ Θ ( 1 ), якщо є деякі константи c , d такі, що для всіх x , d ≤ f ( x ) ≤ c . Тобто f росте як мінімум так само швидко, і щонайбільше так швидко, як постійна функція.
А що це стосується використання пам'яті? Розглянемо деякий алгоритм . Існує деяка (математична) функція, яка при введенні n дає максимальне використання пам'яті вашого алгоритму A на будь-якому вході розміром n . Назвемо цю функцію m e m .
Отже, зараз ми поєднуємо наші дві концепції. Якщо алгоритм використовує пам'ять, то його функція використання пам’яті знаходиться в Θ ( 1 ) , це означає, що існує деяка d , c така, що для будь-якого вводу використовується пам'ять між d і c .
Коротше кажучи, це означає, що використання пам'яті алгоритму знаходиться в деякому постійному діапазоні, незалежно від введення.
Постійна складність алгоритму простору
Кількість пам'яті, яку використовує ваш алгоритм, не залежить від введення даних.
Однак алгоритми In-situ виконують призначену функцію на самому вході і, таким чином, вимагають зовсім небагато місця або не вимагають його. Введення, як правило, перезаписується виведенням під час виконання алгоритму. ( ref )
Алгоритми in-situ не враховують простір, який займає вхід, і враховують лише додатковий простір, обчислюючи складність простору.