Как-то я нахожу, что получить сложность Big O для рекурсивных алгоритмов намного сложнее по сравнению с итеративными алгоритмами. Предоставьте некоторое представление о том, как я должен решить эти два вопроса.Вычисление большой сложности O рекурсивных алгоритмов
* Предположим, что submethod имеет линейную сложность
def myMethod(n)
if (n>0)
submethod(n)
myMethod(n/2)
end
end
def myMethod(k,n)
if(n>0)
submethod(k)
myMethod(k,n/2)
end
end
Вы пытались преобразовать их в итеративные алгоритмы? Они как хвост-рекурсивный, так и простой, чтобы сделать итеративный. Например, первым является 'while n> 0 {submethod (n); n/= 2;} ' –