2017-09-13 5 views
0

漸近表記についての質問。私は漸近記法の説明の多くは言って見てきた:シータまたはリトルOの代わりにビッグOを使用する場合

θ(...)=

O(...)に似ていることは<=

o(...)に類似していることを意味すると思われる<

に似ていますf(n) = O(g(n))の場合、f(n) = θ(g(n))またはf(n) = o(g(n))のいずれかです。

f(n) = O(g(n))には、f(n) = θ(g(n))f(n) = o(g(n))もありませんか?もしそうなら、これの例は何ですか?そしてもしそうでなければ、θ(...)またはo(...)がより強い記述子であるとき、なぜ我々はO(...)を使用するでしょうか?

+0

この場合、「類似」は数学的に正しいものではありません。あなたはそれを有益なメタファーとみなすべきですが、直接適用するものは何もありません。 – Paul

+0

だから、どんな状況で、私たちは小規模なものかシーターなものかではなく、ビッグオーバーを使用しますか? –

+1

タイトな上限を示す。スモール・オは少なくとも実用的な問題ではなく、最も頻繁におもちゃである。 Quicksortは 'o(2^n)'ですが、それを知っているのは何ですか?また、thetaは、 'f(n)= O(g(n))'なら必ずしも成立しない、 'f(n)'の厳密な下限であることを示す。それは主に実用的な使いやすさです。 – Paul

答えて

1

kn<=k!のような最小の整数である場合、f(n)=k!とします。

そしてf(n)は(f(k!+1)/(k!+1)が無限大になる傾向があるため)いずれもθ(n)ません(f(k!)=k!ため)o(n)であるが、明確f(n)=O(n)f(n)<=nとして)。

+0

これは良い例ですが、この回答は不完全だと思います。 OPは "なぜθ(...)かo(...)がより強い記述子であるときにO(...)を使うのはなぜですか?"と答えました。 *その理由。 – ruakh

関連する問題