Questions tagged «time-complexity»

解决问题所需的时间资源(原子操作或机器步骤数)以输入大小表示。如果您的问题与算法分析有关,请改用[runtime-analysis]标记。如果您的问题是关于计算是否会*完成*,请改用[computability]标签。时间复杂性也许是复杂性理论中最重要的子主题。

1
计算大整数的位数
给定二进制表示的两个整数和n,计算x n的位大小的复杂度是多少?xxxnnnxnxnx^n 这样做的一种方式是计算通过计算的近似日志2(X )以足够的精度。看来可以在O (M (k )log k )中完成以k位精度计算log 2(x ),其中M (1+⌊log2(xn)⌋=1+⌊nlog2(x)⌋1+⌊log2⁡(xn)⌋=1+⌊nlog2⁡(x)⌋1+\lfloor \log_2(x^n)\rfloor=1+\lfloor n\log_2(x)\rfloorlog2(x)log2⁡(x)\log_2(x)log2(x)log2⁡(x)\log_2(x)kkkO(M(k)logk)O(M(k)log⁡k)O(M(k)\log k)是计算长度为 k的两个整数的乘积所需的时间。如果 s是 x和 n 的位大小的边界(如果我没有出错),这将产生一个复杂度大约为 O (s log 2 s )的(不是特别简单的)算法。M(k)M(k)M(k)kkkO(slog2s)O(slog2⁡s)O(s\log^2 s)sssxxxnnn 我们可以击败,其中s是x和n的大小(如果它们具有可比较的大小)?是否有一种简单的算法可以使这种复杂性更好?O(slog2(s))O(slog2⁡(s))O(s\log^2(s))sssxxxnnn 注意:我对诸如图灵机之类的理论模型的复杂性感兴趣。

3
证明如果
我非常希望您的帮助来证明以下内容。 如果然后P = Ñ P。NTime(n100)⊆DTime(n1000)NTime(n100)⊆DTime(n1000)\mathrm{NTime}(n^{100}) \subseteq \mathrm{DTime}(n^{1000})P=NPP=NP\mathrm{P}=\mathrm{NP} 这里,是所有语言的类别,可以由不确定性图灵机在O (n 100)的多项式时间内确定,而D T i m e(n 1000) 是所有语言的类别可以由确定性图灵机确定多项式时间为O (n 1000)。NTime(n100)NTime(n100)\mathrm{NTime}(n^{100})O(n100)O(n100)O(n^{100})DTime(n1000)DTime(n1000)\mathrm{DTime}(n^{1000})O(n1000)O(n1000)O(n^{1000}) 任何帮助/建议吗?

3
CLRS的D元堆问题
解决以下问题时我感到困惑(问题1-3)。 题 甲d进制堆就像是一个二进制堆,但(带有一个可能的例外)非叶节点具有d孩子而2个孩子。 您将如何在数组中表示d -ary堆? n个元素的d元堆的高度分别是n和d? 在d -max-heap中给出EXTRACT-MAX的有效实现。根据d和n分析其运行时间。 在d-最大堆中给出INSERT的有效实现。根据d和n分析其运行时间。 给出INCREASE-KEY(A,i,k)的有效实现,如果k <A [i] = k,则标记一个错误,然后适当地更新d -ary矩阵堆结构。根据d和n分析其运行时间。 我的解决方案 给一个数组A [ a1个。。一个ñ]一个[一个1个。。一个ñ]A[a_1 .. a_n] 根1级2级等级k:一个1个:一个2… 一个2 + d− 1:一个2 + d… 一个2 + d+ d2− 1⋮:一个2 + ∑我= 1k − 1d一世… 一个2 + ∑我= 1ķd一世− 1根:一个1个1级:一个2…一个2+d-1个2级:一个2+d…一个2+d+d2-1个⋮等级k:一个2+∑一世=1个ķ-1个d一世…一个2+∑一世=1个ķd一世-1个\qquad \begin{align} \text{root} &: a_1\\ \text{level 1} &: …


2
无等级的联合查找与路径压缩的复杂性
Wikipedia表示不进行路径压缩的按等级合并会产生的摊销时间复杂度,而通过等级压缩和路径压缩会产生的摊销时间复杂度(其中是Ackerman函数的反函数)。但是,它没有提到没有联合等级的路径压缩的运行时间,这就是我通常自己实现的时间。O (α (n ))αO (对数n )O(log⁡n)O(\log n)O (α (n ))O(α(n))O(\alpha(n))αα\alpha 如果没有路径压缩优化,那么使用路径压缩优化进行联合查找的摊还时间复杂度是多少?

2
Spearman等级相关系数计算的复杂度是多少?
我一直在研究Spearman的等级相关系数 ρ = ∑一世(x一世− x¯)(y一世- ÿ¯)∑一世(x一世− x¯)2∑一世(y一世- ÿ¯)2-------------------√ρ=∑一世(X一世-X¯)(ÿ一世-ÿ¯)∑一世(X一世-X¯)2∑一世(ÿ一世-ÿ¯)2\qquad \displaystyle \rho = \frac{\sum_i(x_i-\bar{x})(y_i-\bar{y})}{\sqrt{\sum_i (x_i-\bar{x})^2 \sum_i(y_i-\bar{y})^2}}。 对于两个列表和。该算法的复杂性是什么?y 1,... ,y nX1个,… ,xñX1个,…,Xñx_1, \dots, x_nÿ1个,… ,yñÿ1个,…,ÿñy_1, \dots, y_n 由于该算法应仅计算减法,因此可能为吗?O (n )ññnO (n )Ø(ñ)O(n)

6
Big-O-Notation的常规运行时有变化吗?
有多个ØOO表示法,例如O (n )O(n)O(n)或Ø (ñ2)O(n2)O(n^2)等。我想知道,实际上是否存在诸如ø (2 Ñ2)O(2n2)O(2n^2)或O (对数ñ2)O(log⁡n2)O(\log n^2),或者在数学上是不正确的。 或者说可以将ø (5 Ñ2)O(5n2)O(5n^2)为ø (3 Ñ2)O(3n2)O(3n^2)吗?我不能也不需要弄清楚运行时,也不需要改善任何事情,但是我需要知道这是否是您如何在现实中描述您的功能。

2
是否存在“ O(1)-完全”问题?
许多复杂性类都有“完全”的问题。对于可以在时间内解决的复杂度问题,是否存在完整的问题?O(1)Ø(1个)O(1) 复杂的是,该类取决于计算模型。在一个合理的计算模型中,一个问题可以在时间内解决,但在另一个模型中则无法解决,因为“合理”通常意味着与图灵机的多项式时间等价。但是,仍然可以针对特定的合理模型进行计算。O(1)Ø(1个)O(1) 我认为查看恒定时间多对一减少是最有意义的。但是,如果有相关文献,我也愿意考虑其他合理的减少措施。 对于任何计算模型,是否都存在或已经研究过类似的东西?

1
如何衡量离散对数问题的复杂性?
对此问题在Crypto Stack Exchange上的回答基本上是说,为了测量对数问题的复杂性,我们必须考虑代表组大小的数字的长度。似乎是任意的,为什么我们不选择组的大小作为参数呢?是否有一个标准来知道选择哪种参数?实际上,我知道我忽略了一些重要的事情,因为如果我们按照小组的规模来做,复杂性会发生巨大的变化。


3
如果选择最大元素作为枢轴,Quicksort是否始终具有二次运行时间?
如果您有快速排序算法,并且始终选择最小(或最大)元素作为枢轴;我是否假设如果您提供一个已经排序的数据集,无论您的“已排序”列表是按升序还是降序,都将始终获得最差的性能? 我的想法是,如果您始终为枢轴选择最小的元素,那么“已排序”输入是按升序还是降序排序并不重要,因为选择相对于枢轴进行排序的子集始终是一样大小?

1
连接可以并行化吗?
假设我们要在谓词上加入两个关系。这是在NC吗? 我意识到,证明它不在NC中就等于证明,因此我将接受它是一个开放性问题的证据作为答案。P≠ NCP≠ñCP\not=NC 我对一般情况和特定情况都感兴趣(例如,可能具有某些特定的数据结构,可以将其并行化)。 编辑:将评论中的一些澄清带入这篇文章: 我们可以考虑等值。在单个处理器上,基于哈希的算法在,这是我们能做的最好的事情,因为我们必须读取每个集合一。X = 乙。ÿ一个。X=乙。ÿA.x = B.yO (| A | + | B |)Ø(|一个|+|乙|)O(|A|+|B|) 如果谓词是一个“黑匣子”,我们必须检查每对,则配对,而每个配对都可能存在或不存在,因此有可能性。检查每一对将可能性减半,所以我们能做的最好的就是。| A | ⋅ | B ||一个|⋅|乙||A|\cdot|B|2一b2一个b2^{ab}O (a b )Ø(一个b)O(ab) 是否可以将其中的一个(或某些第三种类型的连接)改进为在多个处理器上?日志ķñ日志ķ⁡ñ\log^k n

1
元胞自动机的维度对复杂性类别的影响
让我们以3d→2d缩减为例:用2d细胞自动机模拟3d细胞自动机的成本是多少? 这是一堆更具体的问题: 哪种算法的时间复杂度会改变多少? 编码的基本思想是什么?3d网格如何有效(或不高效……)映射到2d网格?(挑战似乎是实现两个单元之间的通信,该两个单元最初在3d网格上相邻,而在2d网格上不再相邻)。 特别是,我对指数复杂度算法的复杂度漂移很感兴趣(我猜它在任何维度上都保持指数级,是这样吗?) 注意:我对低复杂度类不感兴趣,对于这些类而言,所选的I / O方法会影响复杂性。(也许最好是假设I / O方法是无量纲的:在可变的时间步长内在一个特定的单元上本地完成。) 一些上下文:我对并行局部图重写感兴趣,但是这些图比3d(或ωd…)网格更接近2d网格,我想知道对二维二维硬件实现的期望硅片。
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.