计算机科学

为学生,研究人员和计算机科学从业者提供的问答

4
确定状态时具有指数状态的NFA
如何建立具有个状态的DFA示例,而等效的NFA具有个状态。显然,DFA的状态集应包含NFA的状态集的所有子集,但我不知道如何开始。有什么建议可以使我走上正确的道路吗?2n2n2^nnnn

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)

2
是与Oracle访问ň P不仅仅是大ň P?据我了解,N P N P只是一台图腾机,可以查询另一台N P机器,而不是N P可以模拟N P N P吗?这个说法有什么问题吗?ñPNPNPñPNPNPñPNPNPñPñPNPNPNP^ {NP}ñPNPNPñPNPNPñPñPNPNPNP^{NP}

1
给定一组线段,如何构造双向连接的边列表?
对于嵌入在平面中的给定平面图,由一组线段,每个线段均由其端点。为平面细分构造DCEL数据结构,描述算法,证明其正确性并显示复杂性。G(V,E)G(V,E)G(V,E)E={e1,...,em}E={e1,...,em}E= \left \{ e_1,...,e_m \right \} eieie_i{Li,Ri}{Li,Ri}\left \{ L_i,R_i \right \} 根据对DCEL数据结构的描述,DCEL的不同对象(即顶点,边和面)之间存在许多连接。因此,DCEL似乎很难构建和维护。 您知道可用于构造DCEL数据结构的任何有效算法吗?


4
Turing Machine(TM)能否确定暂停问题是否适用于所有TM?
在此站点上,关于TM是否可以决定暂停问题的问题有很多变体,对于其他所有TM还是某些子集而言。这个问题有些不同。 它询问暂停问题是否适用于所有TM的事实是否可以由TM确定。我相信答案是否定的,并希望检查我的推理。 将元暂停语言定义为由TM组成的语言,这些语言决定TM是否暂停。LMHLMHL_{MH} LMH={M:∀M′,wM(M′,w) accepts if M′(w) halts, rejects otherwise}LMH={M:∀M′,wM(M′,w) accepts if M′(w) halts, rejects otherwise}L_{MH} = \{ M : \forall_{M',w} M(M', w) \text{ accepts if $M'(w)$ halts, rejects otherwise}\} LMH=∅LMH=∅L_{MH}= \emptyset由于停止问题,。 因此,标题问题可以更精确地表述:是否?LMH=∅LMH=∅L_{MH} = \emptyset 根据赖斯定理,不确定语言是否为空。 在这两种情况下,如果是或不是re,则不确定。 L M H = ∅LMHLMHL_{MH}LMH=∅LMH=∅L_{MH} = \emptyset 因此,不确定。LMH=∅LMH=∅L_{MH} = \emptyset 这证明TM不能决定暂停问题是否适用于所有TM。 我的理解正确吗? 更新:我试图证明TM不能为看起来似乎正确的“证明”的某些定义“证明停止问题”。下面是为什么我认为这是正确的说明。 …

1
为什么Coq会在其核心语言中包含let表达式
Coq在其核心语言中包含let表达式。我们可以这样将let表达式转换为应用程序: let x : t = v in b ~> (\(x:t). b) v 我知道这并不总是可行,因为v在进行typechecking时该值不可用b。但是,可以通过特殊外壳对表单应用程序进行类型检查来轻松解决此问题(\(x:t). b) v。这使我们可以在进行类型检查时以特殊情况为代价删除let表达式。为什么Coq include仍然包含let表达式?它们是否还有其他优点(除了不需要特殊情况)?

1
为什么说广度优先搜索在时间?
经常有人说(例如,在Wikipedia中),图上的广度优先搜索(BFS)的运行时间为。但是,任何连接图都具有,即使在非连接图中,BFS也永远不会查看包含起始顶点的组件外部的顶点。该组件最多包含 边,所以它最多包含个顶点,这些是该算法将访问的唯一顶点。G=(V,E)G=(V,E)G=(V,E)O(|V|+|E|)O(|V|+|E|)O(|V|+|E|)|V|≤|E|+1|V|≤|E|+1|V|\leq |E|+1|E||E||E||E|+1|E|+1|E|+1 这意味着,那么为什么不说运行时间仅为呢?|V|+|E|≤2|E|+1|V|+|E|≤2|E|+1|V|+|E|\leq 2|E|+1O(|E|)O(|E|)O(|E|) 这是关于Disjkstra算法运行时间的一个问题的评论。


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)吗?我不能也不需要弄清楚运行时,也不需要改善任何事情,但是我需要知道这是否是您如何在现实中描述您的功能。

1
是否存在一种有效的算法来确定图是否具有平凡的自同构性?
我正在研究与拉丁方有关的问题,并且我想要一种基本上可以归结为决策问题的方法: 输入:有限的简单图形G。 输出:YES如果G具有非平凡的自同构,NO否则。 因此... 问题:是否存在一种有效的算法来确定图是否具有平凡的自同构性? 我们可以使用Nauty或Bliss(可能还有其他一些软件包)来计算整个自同构组,但是我不需要它。我需要确定的只是它是否微不足道。 从理论上讲,这种决策问题在某种程度上“计算整个自同构组”的复杂性是等效的。我不确定。 对我而言,“有效”基本上意味着“在实践中比计算整个同构组更快”,但是我也对它的理论感兴趣。

2
是否存在长度为6,大小为32和距离为2的二进制代码?
问题是证明或反对,st,的存在。 ; ; 。(代表汉明距离)CCC|c|=6,∀c∈C|C|=6,∀C∈C|c| = 6,\forall c\in C|C|=32|C|=32|C| = 32d(ci,cj)≥2,1≤i&lt;j≤32d(C一世,CĴ)≥2,1个≤一世&lt;Ĵ≤32d(c_i,c_j)\geq2,1\leq i<j\leq32ddd 我试图构造一个令人满意的代码。我能得到的最好结果是让(的串联,其大小为恰好是该大小的理论上限,现在我不知道不知道下一步该怎么做才能解决问题。C=C′×C′C=C′×C′C = C'\times C'C′={000,011,110,101}C′={000,011,110,101}C' = \{000,011,110,101\}

4
有界的停止问题是可以决定的。为什么这与赖斯定理不冲突?
赖斯定理的一个陈述在“计算复杂性:一种现代方法”(Arora-Barak)的第35页上给出: 从A部分函数至{ 0 ,1 } * ]是不一定在其所有输入定义的函数。我们说一个TM 中号计算部分功能˚F如果为每一个X在其上˚F定义,中号(X )= ˚F (X )和用于每个X上˚F没有定义中号时对输入执行进入无限循环X。如果S{0,1}∗{0,1}∗\{0,1\}^*{0,1}∗{0,1}∗\{0,1\}^*MMMfffxxxfffM(x)=f(x)M(x)=f(x)M(x) = f(x)xxxfffMMMxxxSSS是一组部分功能,我们定义是布尔函数,关于输入α输出1 IFF 中号α计算IN部分功能小号。赖斯定理说,对于每个非平凡的S,函数f S都是不可计算的。fSfSf_Sαα\alphaMαMαM_\alphaSSSSSSfSfSf_S 维基百科指出,限时播放器的语言是EXPTIME完整的。我希望这种语言看起来像接受X在不到ñ步骤}。因此,让M为在指数时间内决定这种有界语言的DTM。似乎该DTM正在为所有图灵机决定某些属性,因此我的直觉告诉我,赖斯定理排除了这种决定。但是很明显,M计算一个总函数。{(α,x,n):Mα{(α,x,n):Mα\{(\alpha,x,n) : M_\alpha xxxnnn}}\}MMMMMM 我对这种语言和赖斯定理之间的关系缺少什么?

2
寻找最佳订购
我遇到了这个问题,正在努力寻找解决方法。任何想法将不胜感激! 假设我们给出一个矩阵{−1,0,1}n × k{−1,0,1}n × k\{-1, 0, 1\}^{n\ \times\ k} ,例如 ⎡⎣⎢⎢⎢⎢⎢⎢1−10−11001−101010000010−11−11−1⎤⎦⎥⎥⎥⎥⎥⎥[1010−1−100010110−1−1−10111000−1]\begin{bmatrix} 1 & 0 & 1 & 0 & -1 \\ -1 & 0 & 0 & 0 & 1 \\ 0 & 1 & 1 & 0 & -1 \\ -1 & -1 & 0 & 1 & …

1
λ-演算:在函数的内存表示中最有效的是什么?
我想比较函数编码(Church / Scott)与传统编码(汇编器/ C)数据结构的性能。 但是在我这样做之前,我需要知道函数在内存中的表示效率。该功能当然可以部分应用(也称为闭包)。 我对当前流行的功能性语言(Haskell,ML)使用的编码算法以及可以实现的最有效的一种语言都感兴趣。 奖金点:有这样的编码该地图函数编码整数天然整数(short,int等,在C)。可能吗 我根据效率来评估效率。换句话说,编码越有效,对功能数据结构的计算性能的影响就越小。

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.