タグ付けされた質問 「asymptotics」

漸近表記と分析に関する質問

3
ランダウ用語の和の再訪
私は以前にランダウ項の合計について(シード)質問をしました。算術における漸近表記を乱用することの危険性を測定しようとして、混合成功しました。 さて、ここで私たちの再発の達人JeffEは本質的にこれを行います: ∑i=1nΘ(1i)=Θ(Hn)∑i=1nΘ(1i)=Θ(Hn)\qquad \displaystyle \sum_{i=1}^n \Theta\left(\frac{1}{i}\right) = \Theta(H_n) 最終結果は正しいですが、これは間違っていると思います。どうして?暗黙の定数(上限のみ)の存在をすべて追加すると、 。∑i=1nci⋅1i≤c⋅Hn∑i=1nci⋅1i≤c⋅Hn\qquad \displaystyle \sum_{i=1}^n c_i \cdot \frac{1}{i} \leq c \cdot H_n 今、どのように計算を行うからC 1、... 、C nは?答えは、私たちは不可能だと私は信じています。cはすべてのnにバインドする必要がありますが、nが大きくなるにつれてc iが増えます。それらについては何も知りません。C 私は非常によくに依存してもよいI有限:我々はバウンド負いかねますので、cが存在しない場合があります。cccc1,…,cnc1,…,cnc_1, \dots, c_ncccnnn cicic_innncicic_iiiiccc さらに、左側にある変数が無限大になるこの微妙な問題がありますまたはn?どちらも?場合のn(互換性のため)、の意味するものであるΘ (1 /私が)ことを知って、1 ≤ I ≤ nは?Θ (1 )を意味するだけではありませんか?もしそうなら、合計をΘ (n )より上に制限することはできません。iiinnnnnnΘ(1/i)Θ(1/i)\Theta(1/i)1≤i≤n1≤i≤n1 \leq i \leq nΘ(1)Θ(1)\Theta(1)Θ(n)Θ(n)\Theta(n) それで、それはどこに私たちを残すのでしょうか?それは露骨な間違いですか?微妙なもの?それとも、表記のいつもの乱用であり、我々は見てはならないコンテキストのうち、このような兆し?ランダウ項の(特定の)合計を評価するための(厳密な)正しいルールを作成できますか?=== 主な質問は:は何ですか?我々は(それはそれとしては、一定の考慮した場合である和の範囲内で)我々は簡単に反例を構築することができます。一定でないと、どう読むかわかりません。iii

5
効率的なアルゴリズムとは何ですか?
漸近的な振る舞いの観点から、何が「効率的な」アルゴリズムと考えられていますか?その時点で線を引く基準/理由は何ですか?個人的に、ようなように、私が単純に「サブ多項式」と呼ぶものはすべて効率的であり、は「非効率的」になります。しかし、多項式次数で効率的と呼ばれるものは何でも聞いています。理由は何ですか?f(n)=o(n2)f(n)=o(n2)f(n) = o(n^2)n1+ϵn1+ϵn^{1+\epsilon}Ω(n2)Ω(n2)\Omega(n^2)

2
2次元ピーク検出の複雑さ(MIT OCW 6.006)
43:30のMIT OCW 6.006の朗読ビデオで、 m列n行の行列Aが与えられた場合、2次元ピーク検出アルゴリズムは、ピークが隣接する隣接セル以上の任意の値である場合、次のように記述されます。m × nm×nm \times nあAAメートルmmんnn 注:を使用して列を説明する際に混乱がある場合は、申し訳ありませんが、これは、朗読ビデオがそれを説明する方法であり、ビデオと一貫性を保つように努めました。それは私をとても混乱させました。んnn 真ん中の列を選択 // 複雑さがありますΘ (1 )n / 2n/2n/2Θ (1 )Θ(1)\Theta(1) 列の最大値を見つける// 列にm行があるため、複雑度 Θ (m )があるn / 2n/2n/2Θ (m )Θ(m)\Theta(m)メートルmm 水平を確認してください。最大値の行の近傍、それがより大きい場合はピークが検出され、それ以外の場合は再帰します// 複雑さT (n / 2 、m )を持ちますT(n / 2 、m )T(n/2,m)T(n/2, m)T(n/2,m)T(n/2,m)T(n/2,m) 次に、再帰を評価するために、暗唱インストラクターは言います は、最大値を見つけるためT(1,m)=Θ(m)T(1,m)=Θ(m)T(1,m) = \Theta(m) T(n,m)=Θ(1)+Θ(m)+T(n/2,m)(E1)(E1)T(n,m)=Θ(1)+Θ(m)+T(n/2,m) T(n,m) = \Theta(1) + \Theta(m) + …

2
二重指数vs単一指数
調整できない4つの原則を次に示します。 二重指数時間アルゴリズムは、定数で時間で実行されますのk ∈ NO (22んk)O(22nk)O(2^{2^{n^k}})K ∈ Nk∈Nk \in \mathbb{N} 指数時間アルゴリズムは、定数でで実行されますのk ∈ NO(2nk)O(2nk)O(2^{n^k})k∈Nk∈Nk \in \mathbb{N} 前者の境界は後者よりも厳密に速く成長します。つまり、二重指数時間で実行されるが指数時間では実行されないアルゴリズムが存在します。 二重指数範囲にを適用するとは、前述の指数範囲内にあります O (2 2 n k)= O (2 2 n k)= O (2 2 n k)abc=abcabc=abca^{b^c} = a^{bc}O(22nk)=O(22nk)=O(22nk)O(22nk)=O(22nk)=O(22nk)O(2^{2^{n^k}}) = O(2^{2^{nk}}) = O(2^{2nk}) 私は私が実行されているように、指数時間アルゴリズムの定義に関連するいくつかの微妙行方不明です感じではなくが、私はないです繊細さがどこにあるかを正確に確認してください。O (2 n)O(2poly(n))O(2poly(n))O(2^{\mathrm{poly}(n)})O(2n)O(2n)O(2^{n})

1
多対数と多項式の間の便利な関数?
多対数関数よりも漸近的に大きく、多項式関数よりも小さい有用な関数があるかどうか疑問に思っています。 つまり、関数であるとなるようf(n )f(ん)f(n) 定数 k > 0の場合f(n )= ω (log(n )k)f(ん)=ω(ログ⁡(ん)k)f(n) = \omega(\log(n)^k)k > 0k>0k > 0 そして 定数 k > 0の場合f(n )= o (nk)f(ん)=o(んk)f(n) = o(n^k)k > 0k>0k > 0 つまり、これらの制限に適合する関数を単に生成するのではなく、証明やアルゴリズムなどで使用されたということです。

3
fib(n + 2)の上限
これは数学的に解く必要はないと言われていましたが、数学は私がやったことを超えているので、私は困惑している宿題の問題を抱えています。ちょうど上限を提供し、それを正当化します。 してみましょう fのf(n)=|{w∈{a,b}n:aa∉w}|.f(n)=|{w∈{a,b}n:aa∉w}|.f(n) = |\{w ∈ \{a, b\}^n : aa \notin w \}|. 漸近上限をます。fffn→∞n→∞n\to\infty これまでのところ: n123456strings23581321compared to 2n2n−02n−12n−32n−82n−182n−43nstringscompared to 2n122n−0232n−1352n−3482n−85132n−186212n−43 \begin{array}{c|c|c} n & \text{strings} & \text{compared to } 2^n \\\hline 1 & 2 & 2^n - 0 \\ 2 & 3 & 2^n - 1 \\ 3 & 5 & …

1
繰り返し関係のBig-O証明?
この質問は、問題を解決するために実行される手順の方法においてかなり具体的です。 所定の T(n)=2T(2n/3)+O(n)T(n)=2T(2n/3)+O(n)T(n)=2T(2n/3)+O(n)ことを証明。T(n)=O(n2)T(n)=O(n2)T(n)=O(n^2) したがって、手順は次のとおりです。あることを証明したい。T(n)≤cn2T(n)≤cn2T(n) \le cn^2 T(n)=2T(2n/3)+O(n)≤2c(2n/3)2+an≤(8/9)(cn2)+anT(n)=2T(2n/3)+O(n)≤2c(2n/3)2+an≤(8/9)(cn2)+an\begin{align*} T(n)&=2T(2n/3)+O(n) \\ &\leq 2c(2n/3)^2+an\\ &\leq (8/9)(cn^2)+an \end{align*} そして、私の教授は続けました: T(n)≤cn2+ (N - (1 / 9 )C nは2)、T(ん)≤cん2+(aん−(1/9)cん2)、T(n) \leq cn^2+(an-(1/9)cn^2)\,, これは次のようになります: T(N )≤ CのN2 いずれかのために 、C > = 9 A。T(ん)≤cん2 のために c> =9a。T(n)\leq cn^2 \text{ for any }c >= 9a\,. 私の質問は、新しい用語を導入するときに、どうやって8/9から1/9に切り替えることができたのですか?これは許可されますか?彼女は説明しなかった、これは彼女の解決策にあるだけでした。

1
解決漸化式
アルゴリズムの時間の複雑さが入力のスケールで多対数であることを証明したいと思います。 このアルゴリズムの漸化式は、T(2n)≤T(n)+T(na)T(2n)≤T(n)+T(na)T(2n) \leq T(n) + T(n^a)ここで、∈ (0 、1 )。a∈(0,1)a∈(0,1)a\in(0,1) と思わいくつかのためのに依存します。しかし、私はこの不平等を証明することはできません。この再発関係を解決するにはどうすればよいですか? β AT(n)≤logβnT(n)≤logβ⁡nT(n) \leq \log^{\beta}{n}ββ\betaaaa nの上限の多重対数を取得したいだけです。

2
なぜしない
でCLRS(ページ49-50上)、次の文の意味は何ですか。 Σni=1O(i)Σi=1nO(i)\Sigma_{i=1}^{n} O(i)(の単一の匿名関数であるiii)が、同じではありません実際に持っていません、解釈。」O(1)+O(2)+⋯+O(n)O(1)+O(2)+⋯+O(n)O(1)+O(2)+\cdots+O(n)

2
他の2つの間に厳密にBig Ohの複雑性が常に存在するか
私は漸近分析について学んでいて、他の一般的なものの間で生きているエキゾチックな複雑さを見てきました。たとえば、「log log n」は厳密に1とlog nの間です。他の2つの間の複雑さを常に見つけることができるのかと疑問に思います。 具体的には、O(f)⊂O(g)の関数fおよびgについて、O(f)⊂O(h)⊂O(g)のようなhが常に存在するか? これは宿題ではありません。誰かが知っているなら、私はただ興味があります。

1
検索と並べ替えアルゴリズムの基本操作の複雑さ[終了]
休業。この質問には、より焦点を当てる必要があります。現在、回答を受け付けていません。 この質問を改善してみませんか?質問を更新して、この投稿を編集するだけで1つの問題に焦点を当てます。 6年前休業。 Wikiには優れたチートシートがありますが、これは含まれていません。比較またはスワップの。(ただし、通常、スワップ数はその複雑さを決定します)。そこで、以下を作成しました。次の情報は正しいですか?エラーがある場合はお知らせください。修正します。 挿入ソート: 平均ケース/最悪ケース: ; 入力がすでに降順でソートされている場合に発生しますΘ(n2)Θ(n2)\Theta(n^2) ベストケース: ; 入力がすでにソートされている場合Θ(n)Θ(n)\Theta(n) 比較の数:、最悪の場合&にΘ (N )最良の場合にΘ(n2)Θ(n2)\Theta(n^2)Θ(n)Θ(n)\Theta(n) スワップ数:最悪/平均ケース&Θ(n2)Θ(n2)\Theta(n^2)が最良の場合000 選択ソート: 平均ケース/最悪ケース/最良ケース:Θ(n2)Θ(n2)\Theta(n^2) 比較数:Θ(n2)Θ(n2)\Theta(n^2) スワップ数:最悪/平均ケース&0Θ(n)Θ(n)\Theta(n)000最良のケースの中で最もにおいて、アルゴリズムは、あなたが所定の位置に要素を入れ替えたら、あなたは再びそれに触れることはありません、Nスワップが必要です。 マージソート: 平均ケース/最悪ケース/最良ケース:。入力がソートされているかどうかはまったく関係ありませんΘ(nlgn)Θ(nlgn)\Theta(nlgn) 比較数:最悪の場合は&最良の場合はΘ (n )。サイズn&mの2つの配列をマージしていると仮定します。ここでn &lt;Θ(n+m)Θ(n+m)\Theta(n+m)Θ(n)Θ(n)\Theta(n)n&lt;mn&lt;mn<m スワップ数:スワップなし![ただし、インプレースソートではなく追加のメモリが必要] クイックソート: 最悪の場合:Θ(n2)Θ(n2)\Theta(n^2) ; 入力はすでにソートされています ベストケース: ; ピボットが配列をちょうど半分に分割するときΘ(nlogn)Θ(nlogn)\Theta(nlogn) 比較数:最悪の場合&Θ (n l o g nΘ(n2)Θ(n2)\Theta(n^2)最良の場合にΘ(nlogn)Θ(nlogn)\Theta(nlogn) スワップ数:最悪の場合&0Θ(n2)Θ(n2)\Theta(n^2)000、最良の場合は バブルソート: 最悪の場合:Θ(n2)Θ(n2)\Theta(n^2) ベストケース:Θ(n)Θ(n)\Theta(n) ; ソート済み 比較数:Θ(n2)Θ(n2)\Theta(n^2)最悪の場合と最良の場合の スワップ数:最悪の場合&0Θ(n2)Θ(n2)\Theta(n^2)000、最良の場合は 線形検索: 最悪の場合:Θ(n)Θ(n)\Theta(n) ; …

3
はなぜ
3n=2O(n)3n=2O(n)3^n = 2^{O(n)}は明らかに真です。は2を底とする指数関数よりも速く成長するので、それは誤りだと思いました。3n3n3^n どのように真?3n=2O(n)3n=2O(n)3^n = 2^{O(n)}

4
ネストされたビッグO表記
グラフがあるとしましょうでの縁。実行時間がでBFSを実行したい。| E | = O (V 2)G O (V + E )| G ||G||G|| E| =O( V2)|E|=O(V2)|E|=O(V^2)GGGO (V+ E)O(V+E)O(V+E) このグラフの実行時間はで、簡略化すると書くのは自然なことです。O (V 2)O (O (V2)+ V)O(O(V2)+V)O(O(V^2)+V)O (V2)O(V2)O(V^2) このような「ネストされたOを削除する」ショートカットを使用することの落とし穴はありますか(この場合だけでなく、より一般的に)?

2
Akra-Bazziが有料関数gが制限されている必要があるのはなぜですか?
フォンブランドの回答に続いて、私は生徒のためのより強力なマスター定理についての小さな文書を書きたいと思います。その1つがアクラ・バッツィの定理です。私は彼らの論文[1]から定理をコピーして、小さな表記上の混乱²の他に、次の問題を発見しました。 著者は必要とします(私の強調): g(x)g(x)g(x) 実際の値に対して定義されています xxx、有界の正の非減少関数 ∀x≥0∀x≥0\forall x \geq 0 ここに、 ggg 通行料関数です。つまり、繰り返しは次の形式です T(n)=g(n)+∑i=1kaiT(⌊nb−1i⌋)T(n)=g(n)+∑i=1kaiT(⌊nbi−1⌋)\qquad\displaystyle T(n) = g(n) + \sum_{i=1}^k a_i T\bigl(\lfloor n b_i^{-1} \rfloor\bigr)。 今、彼らの論文の最後(p209)で、彼らは彼らの結果を適用するための複数の例を示し、彼らは Ω(n)Ω(n)\Omega(n)これは明らかに制限されていません。 証明をスキミングすることから、彼らは主に形式の積分を要求するようです ∫bag(x )バツp + 1dバツ∫abg(x)xp+1dx\qquad\displaystyle \int_a^b \frac{g(x)}{x^{p+1}} dx 有限の値を持っています。したがって、gggすべてのコンパクトな間隔に制限されることで十分かもしれません。私は証明を詳細に処理しませんでした。彼らがそれを意味することは可能ですか? 私の質問は、アクラ・バッツィの定理は、証明と例と一致するようにどのように述べられるべきですか? M. AkraおよびL. Bazzi(1998)による線形回帰方程式の解について 彼らは必要とする a私∈R∗ +ai∈R∗+a_i \in R^{*+}。これは私が知らないいくつかの表記ですか、それともタイプミスですか?意図された意味は(0,∞)⊆R(0,∞)⊆R(0,\infty) \subseteq \mathbb{R}。

1
解決する
アルゴリズムの概要、第3版(p.95)には、再発を解決する方法の例があります T(n)=3T(n4)+n⋅log(n)T(n)=3T(n4)+n⋅log⁡(n)\displaystyle T(n)= 3T\left(\frac{n}{4}\right) + n\cdot \log(n) マスター定理を適用することによって。 私はそれがどのように行われるかについて非常に混乱しています。そう、a=3,b=4,f(n)=n⋅log(n)a=3,b=4,f(n)=n⋅log⁡(n)a=3, b=4, f(n) = n\cdot \log(n) 最初のステップは比較することです nlogba=nlog43=O(n0.793)nlogb⁡a=nlog4⁡3=O(n0.793)n^{\log_b a} = n^{\log_4 3}= O(n^{0.793}) と f(n)f(n)f(n)。 彼らがこれをどのように比較したのか私には手がかりがありません。本は説明します: f(n)=Ω(nlog43+ϵ)f(n)=Ω(nlog4⁡3+ϵ)f(n) = \Omega (n^{\log_4 3+\epsilon })、 どこ ϵ≈0.2ϵ≈0.2\epsilon \approx 0.2、規則性の条件が満たされることを示すことができる場合、ケース3が適用されます f(n).f(n).f(n). に続く: nが十分に大きい場合、次のようになります。 af(nb)=3(n4)log(n5)≤(34)nlogn=cf(n) for c=34.af(nb)=3(n4)log⁡(n5)≤(34)nlog⁡n=cf(n) for c=34.af\left(\frac{n}{b}\right) = 3\left(\frac{n}{4}\right)\log\left(\frac{n}{5}\right) \le\left(\frac{3}{4}\right)n \log n = cf(n)~ for~ …

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.