Questions tagged «landau-notation»

有关渐近表示法(例如Big-O,Omega等)的问题

6
n * log n和n / log n对多项式运行时间
我知道比Θ (n log n )快,但比Θ (n / log n )慢。我很难理解的是如何将Θ (n log n )和Θ (n / log n )与Θ (n f)进行比较,其中0 &lt; f &lt; 1。Θ (n )Θ(n)\Theta(n)Θ (n 对数n )Θ(nlog⁡n)\Theta(n\log n)Θ (n /对数n )Θ(n/log⁡n)\Theta(n/\log n)Θ (n 对数n )Θ(nlog⁡n)\Theta(n \log n)Θ (n /对数n )Θ(n/log⁡n)\Theta(n/\log n)Θ (nF)Θ(nf)\Theta(n^f)0 &lt; f&lt; 10&lt;f&lt;10 < f …

1
用大O表示形式的代字号是什么意思?
我正在阅读一篇论文,它在时间复杂度描述中说时间复杂度是。Ø〜(22 n)Ø〜(22ñ)\tilde{O}(2^{2n}) 我已经搜索了互联网和Wikipedia,但是找不到波浪号(big-O / Landau)表示的代字号。在论文本身中,我也没有发现任何线索。什么是什么意思?Ø〜(⋅ )Ø〜(⋅)\tilde{O}(\cdot)


2
大无限链
首先,让我写大的定义只是为了使事情明确。OOO f(n)∈O(g(n))⟺∃c,n0&gt;0f(n)∈O(g(n))⟺∃c,n0&gt;0f(n)\in O(g(n))\iff \exists c, n_0\gt 0使得0≤f(n)≤cg(n),∀n≥n00≤f(n)≤cg(n),∀n≥n00\le f(n)\le cg(n), \forall n\ge n_0 假设我们有有限数量的函数:令人满意:f1,f2,…fnf1,f2,…fnf_1,f_2,\dots f_n O(f1)⊆O(f2)⋯⊆O(fn)O(f1)⊆O(f2)⋯⊆O(fn)O(f_1)\subseteq O(f_2)\dots \subseteq O(f_n) 通过传递性,我们得到:OOOO(f1)⊆O(fn)O(f1)⊆O(fn)O(f_1)\subseteq O(f_n) 如果我们有无限链,这是否成立?换句话说,吗?O′sO′sO'sO(f1)⊆O(f∞)O(f1)⊆O(f∞)O(f_1) \subseteq O(f_\infty) 我无法想象发生了什么。

1
两个变量的渐近分析?
对于具有多个变量的函数,如何定义渐近分析(大o,小o,大theta,大theta等)? 我知道Wikipedia文章上有一部分,但是它使用了许多我不熟悉的数学符号。我还发现了以下论文:http : //people.cis.ksu.edu/~rhowell/asymptotic.pdf然而,该论文篇幅很长,提供了渐近分析的完整分析,而不仅仅是给出定义。同样,数学符号的频繁使用使它很难理解。 有人能提供没有复杂数学符号的渐近分析的定义吗?

2
是否
因此,我有一个问题可以证明一个说法: O(n)⊂Θ(n)O(n)⊂Θ(n)O(n)\subset\Theta(n) ... 我不需要知道如何证明这一点,只是我认为这没有任何意义,我认为应该是。Θ(n)⊂O(n)Θ(n)⊂O(n)\Theta(n)\subset O(n) 我的理解是是所有不比差的函数的集合,而是所有不比n好且不差的函数的集合。ñ Θ (Ñ )O(n)O(n)O(n)nnnΘ(n)Θ(n)\Theta(n) 使用这个,我可以想到一个常数函数的例子,。该函数肯定是的元素,因为当接近足够大的数字时,它的作用不会比差。O (n )n ng(n)=cg(n)=cg(n)=cO(n)O(n)O(n)nnnnnn 然而,同样的功能不会的元素为G中做得比大型 ...然后因为和,然后是Θ (Ñ )ñ ñ 克∈ ø (Ñ )克∉ Θ (Ñ )ø (Ñ )∉ Θ (Ñ )gggΘ(n)Θ(n)\Theta(n)nnnnnng∈O(n)g∈O(n)g \in O(n)g∉Θ(n)g∉Θ(n)g \not\in \Theta(n)O(n)∉Θ(n)O(n)∉Θ(n)O(n)\not\in\Theta(n) 那么问题也许是错的吗?我知道做这个假设很危险,通常我会漏掉一些东西,在这种情况下我什至看不到。 有什么想法吗 ?非常感谢..

1
推断优化类型
在工作中,我的任务是推断一些有关动态语言的类型信息。我将语句序列重写为嵌套let表达式,如下所示: return x; Z =&gt; x var x; Z =&gt; let x = undefined in Z x = y; Z =&gt; let x = y in Z if x then T else F; Z =&gt; if x then { T; Z } else { F; Z } 由于我从一般类型信息开始,并试图推断出更具体的类型,因此自然的选择是精简类型。例如,条件运算符返回其真假分支类型的并集。在简单的情况下,它效果很好。 但是,在尝试推断以下类型时遇到了障碍: function …
11 programming-languages  logic  type-theory  type-inference  machine-learning  data-mining  clustering  order-theory  reference-request  information-theory  entropy  algorithms  algorithm-analysis  space-complexity  lower-bounds  formal-languages  computability  formal-grammars  context-free  parsing  complexity-theory  time-complexity  terminology  turing-machines  nondeterminism  programming-languages  semantics  operational-semantics  complexity-theory  time-complexity  complexity-theory  reference-request  turing-machines  machine-models  simulation  graphs  probability-theory  data-structures  terminology  distributed-systems  hash-tables  history  terminology  programming-languages  meta-programming  terminology  formal-grammars  compilers  algorithms  search-algorithms  formal-languages  regular-languages  complexity-theory  satisfiability  sat-solvers  factoring  algorithms  randomized-algorithms  streaming-algorithm  in-place  algorithms  numerical-analysis  regular-languages  automata  finite-automata  regular-expressions  algorithms  data-structures  efficiency  coding-theory  algorithms  graph-theory  reference-request  education  books  formal-languages  context-free  proof-techniques  algorithms  graph-theory  greedy-algorithms  matroids  complexity-theory  graph-theory  np-complete  intuition  complexity-theory  np-complete  traveling-salesman  algorithms  graphs  probabilistic-algorithms  weighted-graphs  data-structures  time-complexity  priority-queues  computability  turing-machines  automata  pushdown-automata  algorithms  graphs  binary-trees  algorithms  algorithm-analysis  spanning-trees  terminology  asymptotics  landau-notation  algorithms  graph-theory  network-flow  terminology  computability  undecidability  rice-theorem  algorithms  data-structures  computational-geometry 

2
如何证明 ?
这是乌迪·曼伯(Udi Manber)书中的一项家庭作业问题。任何提示都很好:) 我必须证明: n (对数3(n ))5= O (n1.2)n(log3⁡(n))5=O(n1.2)n(\log_3(n))^5 = O(n^{1.2}) 我尝试使用本书的定理3.1: F(n )C= O (aF(n ))f(n)c=O(af(n))f(n)^c = O(a^{f(n)})(对于,a&gt; 1)a &gt; 1c &gt; 0c&gt;0c > 0一个&gt; 1a&gt;1a > 1 替代: (日志3(n ))5= O (3日志3(n ))= O (n )(log3⁡(n))5=O(3log3⁡(n))=O(n)(\log_3(n))^5 = O(3^{\log_3(n)}) = O(n) 但是n (对数3(n ))5= Ö (Ñ ⋅ Ñ )= Ö …

1
Big-Oh时间复杂度可以包含多个变量吗?
例如,让我们说我正在做字符串处理,需要对两个字符串进行一些分析。我没有给出关于它们的长度可能最终是多少的信息,因此它们来自两个不同的家庭。将算法的复杂度称为或(取决于我们使用的是朴素算法还是优化算法)是否可以接受?O (n * m )Ø(ñ∗米)O(n * m)O (n + m )O(n+m)O(n + m) 同样,让我们​​假设我们选择的算法实际上需要两个阶段-第一个字符串的设置阶段,这使我们能够处理任意数量的其他字符串而不会产生初始成本。说它具有构造,再进行任意数量的计算,是否被认为合适?O (m )O (n )Ø(ñ)O(n)O (米)Ø(米)O(m) 因为两个计算都是线性的,所以仅将它们称为是否合适?O (n )Ø(ñ)O(n)

2
如何讨论big-O表示法的系数
big-O表示法使用什么表示法来讨论函数系数? 我有两个功能: F(x )= 7 x2+ 4 x + 2f(x)=7x2+4x+2f(x) = 7x^2 + 4x +2 G(x )= 3 x2+ 5 x + 4g(x)=3x2+5x+4g(x) = 3x^2 + 5x +4 显然,这两个函数都是,实际上是Θ (x 2),但这不允许进行进一步的比较。我如何讨论系数7和3。将系数减小到3不会改变渐近复杂度,但仍然对运行时/内存使用产生重大影响。Ø (X2)O(x2)O(x^2)Θ (x2)Θ(x2)\Theta(x^2) 是不是错说是Ø (7 X 2)和G ^是Ø (3 X 2)?是否还有其他考虑系数的符号?或讨论此事的最佳方法是什么?FffO (7 x2)O(7x2)O(7x^2)GggO (3 x2)O(3x2)O(3x^2)

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,\ dots,c_n计算?我相信答案是,我们不能:c必须绑定所有n,但是随着n的增长,我们会得到更多的c_i。我们对它们一无所知。c_i可能非常依赖于i,所以我们不能假设一个界限:有限的c可能不存在。cccc1,…,cnc1,…,cnc_1, \dots, c_ncccnnn cicic_innncicic_iiiiccc 此外,还有一个微妙的问题,即哪个变量在左侧变为无穷大iii或nnn?都?如果nnn(出于兼容性考虑),知道1 \ leq i \ leq n,则\ Theta(1 / i)是什么意思?它不仅意味着\ Theta(1)吗?如果是这样,我们就不能比\ Theta(n)更好地约束和。Θ(1/i)Θ(1/i)\Theta(1/i)1≤i≤n1≤i≤n1 \leq i \leq nΘ(1)Θ(1)\Theta(1)Θ(n)Θ(n)\Theta(n) 那么,那把我们留在哪里呢?这是公然的错误吗?一个微妙的?还是仅仅是惯常使用符号,我们不应该在上下文中查看===符号?我们是否可以制定(严格)正确的规则来评估(确定)Landau项的总和? 我认为主要的问题是:什么是?如果我们认为这是不变(因为它是和的范围内),我们可以轻松地构建反例。如果不是恒定的,我不知道如何阅读。iii

3
使用渐近符号时出错
我试图了解以下重复发生的以下证明有什么问题 T(n)=2T(⌊n2⌋)+nT(n)=2T(⌊n2⌋)+n T(n) = 2\,T\!\left(\left\lfloor\frac{n}{2}\right\rfloor\right)+n T(n)≤2(c⌊n2⌋)+n≤cn+n=n(c+1)=O(n)T(n)≤2(c⌊n2⌋)+n≤cn+n=n(c+1)=O(n) T(n) \leq 2\left(c\left\lfloor\frac{n}{2}\right\rfloor\right)+n \leq cn+n = n(c+1) =O(n) 文档说,因为归纳假设它的错误是 T(n)≤cnT(n)≤cn T(n) \leq cn 我在想什么?

5
什么是有效算法?
从渐近行为的角度来看,什么被视为“有效”算法?当时画线的标准/原因是什么?就我个人而言,我认为任何可能被我天真地称为“次多项式”的事物,例如例如都是有效的,而任何将是“无效的”。但是,我听说过任何多项式阶数都被称为有效的东西。这是什么原因?f(n)=o(n2)f(n)=o(n2)f(n) = o(n^2)n1+ϵn1+ϵn^{1+\epsilon}Ω(n2)Ω(n2)\Omega(n^2)

3
大O:嵌套循环依赖
我收到了Big O的作业分配。我受嵌套的for循环的困扰,该循环取决于先前的循环。这是我的作业问题的修改版本,因为我确实很想理解它: sum = 0; for (i = 0; i &lt; n; i++ for (j = 0; j &lt; i; j++) sum++; 让我失望的j &lt; i部分是那部分。似乎它几乎像阶乘一样执行,但是要加上。任何提示将不胜感激。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.