オーダー記法(ランダウの記号)の定義と大雑把な意味
更新
オーダー記法(ランダウの記号)は,無限大でのふるまいや 付近でのふるまいを大雑把に評価するのに用いられる。
オーダー記法の基本的な考え方
オーダー記法の基本的な考え方
無限大や 付近でのふるまいを,以下の2つの考え方に従って大雑把に評価します。
- 影響力が一番強い項以外無視する
- 定数倍の差は無視する(係数は書かない)
例えば, はルール1により では と同じくらい, はルール2により では と同じくらい,と考えます。
以下では,無限大でのふるまいについて詳しく解説します( 付近でのふるまいは最後に少しだけ)。
無限大でのふるまい(計算量理論)
無限大でのふるまい(計算量理論)
主にアルゴリズムの計算量評価に用いられる記号です。
三種類の記号について,表記・大雑把な意味(重要)・きちんとした定義・具体例を解説します。
- ビッグオー(重要)
表記:
意味: の発散のスピードは 早くても と同じくらい
定義:ある が存在して なら
例: ,
注:例の二つ目の評価は一つ目の評価より弱い無意味なものですが,間違いではありません。
- ビッグオメガ
表記:
意味: の発散のスピードは 遅くても と同じくらい
定義:ある が存在して なら
例: ,
- ビッグシータ
表記:
意味: は だいたい と同じスピードで発散する
定義:ある が存在して なら
例: ,
注:ビッグオーをビッグシータの意味で使うことも多いので注意が必要です。
よく登場するオーダー
よく登場するオーダー
アルゴリズムの計算量は少ない(発散が遅い)方が当然嬉しいです。よく登場するオーダーを嬉しい順に並べてみました。
(多項式オーダーの世界)
,,,,,,,
ーーー越えられない壁ーーー
,,
付近でのふるまい
付近でのふるまい
例えば,テイラー展開の剰余項について議論するときなどに登場します。
- ビッグオー
表記:
意味: のとき に近づくスピードが と同じくらい(または よりはやい)
これは, の絶対値が( の近くで)定数で上からおさえられることを表しています。
- スモールオー
表記:
意味: のとき に近づくスピードが よりもはやい
これは を表しています。
定数倍の差を無視するなんて器が大きいですね。