mirror of
https://github.com/krahets/hello-algo.git
synced 2026-10-24 23:15:20 +08:00
docs: clarify the operation-counting convention
This commit is contained in:
@@ -717,7 +717,7 @@ $T(n)$ は一次関数であり、実行時間の増加傾向が線形である
|
||||
2. **すべての係数を省略する**。例えば $2n$ 回や $5n + 1$ 回のループは、いずれも $n$ 回と簡略化できます。$n$ の前の係数は時間計算量に影響しないからです。
|
||||
3. **ループが入れ子のときは乗算を使う**。総操作回数は外側のループと内側のループの操作回数の積に等しく、各ループ層には引き続き `1.` と `2.` のコツをそれぞれ適用できます。
|
||||
|
||||
次の関数では、上記のコツを使って操作回数を数えられます:
|
||||
次の例では、代入文または出力文を 1 回実行することを 1 回の操作として数えます。ループ変数の初期化、条件判定、インクリメントのコストは数えませんが、これらはこの例の漸近的な時間計算量に影響しません。上記のコツを使うと、この集計をさらに簡略化できます:
|
||||
|
||||
=== "Python"
|
||||
|
||||
@@ -964,9 +964,9 @@ $T(n)$ は一次関数であり、実行時間の増加傾向が線形である
|
||||
|
||||
$$
|
||||
\begin{aligned}
|
||||
T(n) & = 2n(n + 1) + (5n + 1) + 2 & \text{厳密集計 (-.-|||)} \newline
|
||||
T(n) & = 2n(n + 1) + (5n + 1) + 2 & \text{簡略化前 (-.-|||)} \newline
|
||||
& = 2n^2 + 7n + 3 \newline
|
||||
T(n) & = n^2 + n & \text{手抜き集計 (o.O)}
|
||||
T(n) & = n^2 + n & \text{簡略化後 (o.O)}
|
||||
\end{aligned}
|
||||
$$
|
||||
|
||||
|
||||
Reference in New Issue
Block a user