У меня есть проблема, которую я пытаюсь решить, и я был бы очень признателен за помощь! Какова временная сложность...
for (int j = 1 to n) {
k = j;
while (k < n) {
sum += a[k] * b[k];
k += log n;
}
}
Внешний цикл for выполняется n раз. Я не уверен, что делать с k+= log n
во внутреннем цикле. Я думаю, что это O (n ^ 2). Добавление log(n) к k не совсем дает дополнительные n циклов, но я думаю, что это меньше, чем O(n*log n). Очевидно, что это всего лишь предположение, и любая помощь в выяснении того, как показать это математически, будет принята с благодарностью!
ceil((n-j)/log(n))
. Работайте оттуда. - person Steve Jessop   schedule 03.05.2011