Складність прийому мод


23

Це здається питанням, на яке слід отримати просту відповідь, але я не маю остаточного:

na,pamodp

Просто ділення на потребує часу де - складність множення. Але чи можна виконати трохи швидше?ap O(M(n))M(n)mod


1
Можливо, німе запитання, але чи можете ви перетворити щоб записати в базі а потім подивитись на LSB? pap
Pål GD

2
Ви могли б, але це здається додатковою роботою, і, ймовірно, вимагатиме поділу.
Суреш

Відповіді:


12

Shoup (Розділ 3.3.5, теорема 3.3, стор. 62) дає обмеження для обчислення залишку у часі де і .O ( n log q ) a = q p + r log a = nrO(nlogq)a=qp+rloga=n

Я здогадуюсь, що якщо і є приблизно бітними числами, то (а значить ) має бути досить малим, даючи .a n q log q O ( n )panqlogqO(n)

Якщо - бітове число, а відносно невелике, то підхід множення повинен бути швидшим.n panp

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.