Questions tagged «polynomial-time»

用于针对多项式运行时间的算法,算法分析和复杂性理论问题。时间复杂度。这些问题通常是参考请求或有关运行时分析或时间复杂性的问题。


2
为什么C的void类型不同于Empty / Bottom类型?
维基百科以及我发现的其他来源都将C的void类型列为单位类型,而不是空类型。我觉得这很混乱,因为在我看来,它void更适合于空/底类型的定义。 void据我所知,没有价值观存在。 返回类型为void的函数指定该函数不返回任何内容,因此只能执行某些副作用。 类型的指针void*是所有其他指针类型的子类型。同样,void*在C中进行来回转换是隐式的。 我不确定最后一点是否可以作为void空类型的参数,void*或多或少是与无关的特例void。 另一方面,void它本身不是所有其他类型的子类型,据我所知,这是将类型作为底部类型的要求。
28 type-theory  c  logic  modal-logic  coq  equality  coinduction  artificial-intelligence  computer-architecture  compilers  asymptotics  formal-languages  asymptotics  landau-notation  asymptotics  turing-machines  optimization  decision-problem  rice-theorem  algorithms  arithmetic  floating-point  automata  finite-automata  data-structures  search-trees  balanced-search-trees  complexity-theory  asymptotics  amortized-analysis  complexity-theory  graphs  np-complete  reductions  np-hard  algorithms  string-metrics  computability  artificial-intelligence  halting-problem  turing-machines  computation-models  graph-theory  terminology  complexity-theory  decision-problem  polynomial-time  algorithms  algorithm-analysis  optimization  runtime-analysis  loops  turing-machines  computation-models  recurrence-relation  master-theorem  complexity-theory  asymptotics  parallel-computing  landau-notation  terminology  optimization  decision-problem  complexity-theory  polynomial-time  counting  coding-theory  permutations  encoding-scheme  error-correcting-codes  machine-learning  natural-language-processing  algorithms  graphs  social-networks  network-analysis  relational-algebra  constraint-satisfaction  polymorphisms  algorithms  graphs  trees 

3
为什么不采用数值算法中数字的一元表示形式呢?
伪多项式时间算法是对输入值(幅度)具有多项式运行时间,而对输入大小(位数)具有指数运行时间的算法。 例如,测试数字是否为质数,需要循环从2到数字,并检查 mod是否为零。如果mod花费O(1)时间,则总时间复杂度将为O(n)。n - 1 n innnn−1n−1n-1nnn iii 但是,如果让为写入输入所需的位数,则(二进制),因此,问题的运行时间将是指数的O()。x = 日志n n = 2 x 2 xxxxx=lognx=log⁡nx = \log nn=2xn=2xn = 2^x2x2x2^x 我的问题是,如果我们考虑输入的一元表示形式,则始终为,则伪多项式时间将等于多项式时间复杂度。那么为什么我们从不这样做呢?x = nnnnx=nx=nx=n 此外,由于存在背包的伪多项式时间算法,因此通过取,背包将成为多项式,结果P = NPx=nx=nx=n


1
如果不是多项式或指数式,那么该函数叫什么?
我刚刚在Garey和Johnson的“计算机与难处理性”的第6页上找到了这句话。 时间复杂度函数不能如此有限的任何算法都称为指数时间算法(尽管应注意,此定义包括某些非多项式时间复杂度函数,例如,通常不将其视为指数函数)功能)。nlognnlog⁡nn^{\log n} 我的问题如下 如果不是多项式也不是指数式,那么该函数叫什么?是否有名称或特殊情况?nlognnlog⁡nn^{\log n} 谢谢。

1
是否确定已知间隔中是否存在素数?
我从关于stackoverflow的帖子中看到,有一些相对较快的算法可以筛分一个数字区间,以查看该区间是否存在质数。但是,这是否意味着以下各项的总体决策问题((在区间中是否存在质数?)在P中。(该帖子有很多答案我没有看过,因此如果这个问题是一个问题,我深表歉意。重复或不必要)。 一方面,如果间隔足够大(例如),则适用Bertrand's Postulate之类的东西,并且此间隔中肯定有一个素数。但是,我也知道两个质数之间有任意大的距离(例如。 [N,2N][N,2N][N,2N][N!,N!+N][N!,N!+N][N!,N!+ N] 即使决策问题在PI中,也看不到相应的搜索问题也很容易解决,因为那样执行二进制搜索时,我们可能无法利用素数已知分布的相同属性。

2
感觉指数级但为P的问题
我正在尝试建立一个“异常有用”的算法/问题列表,例如,解决“似乎”本质上非常指数化的问题,但是有一些最终可以解决这些问题的特别聪明的算法。我的意思示例: 线性编程(单纯形算法是指数时间;找到多项式时间解花了很长时间!) 更一般而言,半定规划 原始性测试 2-SAT和HORNSAT 计算行列式(如果这听起来并不困难,请考虑永久变量) 寻找完美的搭配 使用有限简单组的分类可以解决各种硬组理论问题 可以使用复杂的禁止次要特征(可嵌入性在任意表面上;树宽和分支宽度的边界; Delta-Wye可约化图)来解决各种硬图问题 计算有界组中的指数(即以步骤计算,通过重复平方来完成)abmodkabmodka^b \mod klogblog⁡b\log b 计算依赖于LLL算法。(作为特殊情况:Euclidean算法。作为更一般的情况:PSLQ或HJLS算法。) 没有泰勒术语(?)的约束问题。我承认我还没有完全理解这一点,但是听起来它可能包含了上面的2-SAT / HORNSAT情况以及有限域上的任何线性代数。在这里看到更长的帖子 可通过全息缩小计算的问题。 值得一提的是,我还要提到图同构,因为它仍然非常简单(),它等效于许多其他同构问题:nlog2nnlog2⁡nn^{\log^2 n} 有向图/多重图/超级图(一种“较难”的问题) 有限自动机/ CFG 显然,这些方面存在一定的困难,但是所有人都会给至少某些人带来某种“惊奇”的感觉,因为这个问题听起来很困难,但事实证明这很容易解决。LP听起来可能相对简单,但是人们花了相当长的时间来建立一个实际的解决方案。反复平方或求解2-SAT是大学生可能会自己想到的事情,但是如果您只看过NP-Complete问题而没有看过HORNSAT,则听起来像是NP-Completeness的自然人选。解决CFSG或采用多项式方法来检查Delta-Wye可还原性并不是一件容易的事。 我希望这是有道理的; 这里显然有很多主观属性,但是我很想知道其他人发现什么是解决“显然很困难”问题的有效解决方案。


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.