Для фиксированных i
целых i
1 ≤ j ≤ i<sup>2</sup>
, таких что j % i = 0
равны {i,2i,...,i<sup>2</sup>}
. Отсюда следует, что внутренний l oop выполняется i
раз с аргументами i * m
для 1 ≤ m ≤ i
, а охранник выполняется i<sup>2</sup>
раз. Таким образом, функция сложности T(n) ∈ Θ(n<sup>4</sup>)
определяется как:
T(n) = ∑[i=1,n] (∑[j=1,i<sup>2</sup>] 1 + ∑[m=1,i] ∑[k=1,i*m] 1)
= ∑[i=1,n] ∑[j=1,i<sup>2</sup>] 1 + ∑[i=1,n] ∑[m=1,i] ∑[k=1,i*m] 1
= n<sup>3</sup>/3 + n<sup>2</sup>/2 + n/6 + ∑[i=1,n] ∑[m=1,i] ∑[k=1,i*m] 1
= n<sup>3</sup>/3 + n<sup>2</sup>/2 + n/6 + n<sup>4</sup>/8 + 5n<sup>3</sup>/12 + 3n<sup>2</sup>/8 + n/12
= n<sup>4</sup>/8 + 3n<sup>3</sup>/4 + 7n<sup>2</sup>/8 + n/4