int multiply(int a[],int low,int high,int modulus)
{
if(low==high)
return (a[low]);
else
{
int mid = (low+high)/2;
int x = multiply(a, low, mid, modulus) % modulus;
int y = multiply(a, mid+1, high, modulus) % modulus;
return ((x*y) % modulus);
}
}
Является ли его временной сложностью O (log n) или O (n)?Как найти временную сложность этого алгоритма?
Пожалуйста, помогите мне.
Что вы * вы считаете сложностью? – jrok
Знаете ли вы о [Мастер-теореме] (http://en.wikipedia.org/wiki/Master_theorem)? Попробуйте применить его к вашему алгоритму. –
Попробуйте использовать его для разных значений n и постройте график. Затем посмотрите на форму – doctorlove