次の関数の時間計算量は?
for(int i = 0; i < a.size; i++) {
for(int j = i; j < a.size; i++) {
//
}
}
2 番目の for ループですべての要素を反復処理していないため、大きな O n^2 よりも小さいと思います。時間の複雑さは次のようになると思います。
n[ (n) + (n-1) + (n-2) + ... + (n-n) ]
しかし、この式を解くと、
n^2 - n + n^2 - 2n + n^2 - 3n + ... + n^2 - n^2
これはまったく正しくないようです。誰かがこの問題を解決する方法と、どこが間違っているかを正確に教えてもらえますか?