计算机科学

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


3
逼近Kolmogorov复杂度
我研究了有关Kolmogorov复杂性的内容,阅读了Vitanyi和Li的一些文章和书籍,并使用归一化压缩距离的概念来验证作者的脚步法(通过它们的相似性来确定每个作者如何写一些文本和组文档)。 在那种情况下,由于数据压缩器可以用作图灵机,因此使用数据压缩器来近似Kolmogorov复杂度。 除了数据压缩和编程语言(您将使用其中编写某种压缩器)之外,还可以使用其他什么方法来近似Kolmogorov复杂度?还有其他方法可以使用吗?



4
接受随机比较器的排序算法
通用排序算法通常将一组数据进行排序,并使用一个比较器函数来比较两个单独的元素。如果比较器是顺序关系¹,则算法的输出是排序的列表/数组。 我想知道哪种排序算法实际上可以与不是顺序关系的比较器一起使用(特别是在每次比较时都返回随机结果的比较器)。所谓“工作”,是指他们继续返回其输入的排列并以其通常引用的时间复杂度运行(而不是总是降级为最坏的情况,或者陷入无限循环,或者缺少元素)。结果的顺序将是不确定的。更好的是,当比较器是投币游戏时,所得排序将是均匀分布。 从我粗略的脑力计算来看,似乎可以使用合并排序并保持相同的运行时成本并产生合理的随机排序。我认为,诸如快速排序之类的东西会退化,可能无法完成,也不公平。 如随机比较器所述,还有哪些其他排序算法(合并排序除外)可以工作? 作为参考,比较器是一个顺序关系,如果它是一个适当的函数(确定性)并且满足顺序关系的公理: 它是确定性的:compare(a,b)对于特定的对象a,b总是返回相同的结果。 它是可传递的: compare(a,b) and compare(b,c) implies compare( a,c ) 它是反对称的 compare(a,b) and compare(b,a) implies a == b (假设所有输入元素都是不同的,那么自反性就不是问题。) 随机比较器违反所有这些规则。但是,有些比较器不是顺序关系而是随机的(例如,它们可能只违反一个规则,并且仅针对集合中的特定元素)。

2
哪种数据结构组合可以有效地存储离散贝叶斯网络?
我了解贝叶斯网络背后的理论,并且想知道在实践中建立贝叶斯网络需要做什么。假设在这个例子中,我有一个由100个离散随机变量组成的贝叶斯网络(有向网络)。每个变量最多可以使用10个值之一。 我是否将所有节点都存储在DAG中,并且为每个节点存储其条件概率表(CPT)?当某些CPT更改时(除DAG使用的那些CPT以外),我还应使用其他数据结构来确保有效地计算值吗?

1
如何显示L = L(G)?
通过提供正式的语法来指定正式的语言是一项常见的任务:我们不仅需要语法来描述语言,而且还要解析它们,甚至需要进行适当的科学学习。在所有情况下,重要的是手头的语法正确无误,即能准确生成所需的单词。 我们经常可以在较高层次上争论为什么语法可以充分表达所需语言,而没有形式化证明。但是如果我们出于某种原因有疑问或需要正式证明怎么办?我们可以应用哪些技术? 这应该成为参考问题。因此,请谨慎给出一般的,有说服力的答案,至少由一个例子说明了这一点,但仍然涵盖了许多情况。谢谢!

2
JIT编译器与普通编译器有何不同?
有关Java,Ruby和Python之类的JIT编译器的宣传大肆宣传。JIT编译器与C / C ++编译器有何不同?为什么为Java,Ruby或Python编写的编译器称为JIT编译器,而C / C ++编译器仅称为编译器?
22 compilers 

2
是否有一种“自然的”不确定的语言?
是否有任何无法确定的“自然”语言? “自然”是指直接由字符串属性定义的语言,而不是通过机器及其等效语言定义的语言。换句话说,如果语言看起来像 其中,中号是TM,DFA(或普通EXP),PDA(或语法),等,然后大号是不自然的。然而大号= { X Ÿ ... | X 是Y的前缀... }是很自然的。大号= { ⟨ 中号⟩ | ... }大号={⟨中号⟩∣…} L = \{ \langle M \rangle \mid \ldots \}中号中号M大号大号L L = { x y... | X 是Y的前缀... }大号={Xÿ…∣X 是y的前缀…}L = \{xy \ldots \mid x \text{ is a prefix of y} \ldots \}

1
NPI内部层次结构的自然候选人
假设。是的一类问题,既不在也不在。您可以在此处找到被推测为的问题列表。N P I N P P N P N P IP ≠ N PP≠NP\mathsf{P} \neq \mathsf{NP}ñ P 我NPI\mathsf{NPI}ñ PNP\mathsf{NP}PP\mathsf{P}ñ PNP\mathsf{NP}ñ P 我NPI\mathsf{NPI} 拉德纳定理告诉我们,如果则存在无限个问题层次,即存在问题比其他更难问题。N P I N P I N P IN P ≠ PNP≠P\mathsf{NP}\neq\mathsf{P}ñ P 我NPI\mathsf{NPI}ñ P 我NPI\mathsf{NPI}ñ P 我NPI\mathsf{NPI} 我找的这样的问题的候选人,也就是我的兴趣在对问题的 -, -和被推测是, -是众所周知的减少, -但也有从没有已知的减少到。甲乙Ñ P 我甲乙乙甲甲,乙∈ Ñ PA,B∈NPA,B \in …

1
AVL树不平衡吗?
在上一个问题中,有一个平衡树的定义和一个关于红黑树的问题。 这个问题是要问同样的问题,但对于AVL树。 问题是,鉴于平衡树的定义与其他问题相同,μμ\mu 是否有一些使所有足够大的AVL树达到平衡?μμ > 0μ>0\mu \gt 0μμ\mu 我认为AVL树只有一种定义,没有歧义。

1
在图形上添加边时,最短距离会变化多少?
令G=(V,E)G=(V,E)G=(V,E)是一些完整的,加权的,无向的图。我们通过从E到E '一对一地增加边来构造第二个图。我们总共将Θ (| V |)边加到G '。G′=(V,E′)G′=(V,E′)G'=(V, E')EEEE′E′E'Θ(|V|)Θ(|V|)\Theta(|V|)G′G′G' 每次我们添加一个边缘(u,v)(u,v)(u,v)于E′E′E',我们考虑所有对之间的最短距离在(V,E′)(V,E′)(V, E')和(V,E′∪{(u,v)})(V,E′∪{(u,v)})(V, E' \cup \{ (u,v) \})。我们计算由于加而导致的最短距离变化了多少(u,v)(u,v)(u,v)。让CiCiC_i是变化的,当我们添加的最短距离的数量iii边数,令为总和。nnn C = ∑ i C i有多大?C=∑iCinC=∑iCinC = \frac{\sum_i C_i}{n} 由于,所以C = O (n 2)也是如此。这个界限可以改善吗?请注意,我将C定义为所有相加边的平均值,因此,即使证明了C = Ω (n ),也没有那么有趣的一轮,因为距离变化很大。Ci=O(|V|2)=O(n2)Ci=O(|V|2)=O(n2)C_i = O(|V|^2)=O(n^2)C=O(n2)C=O(n2)C=O(n^2)CCCC=Ω(n)C=Ω(n)C = \Omega(n) 我有一种算法可以贪婪地计算几何t跨度,该算法可以在时间内工作,因此,如果C为o (n 2),则我的算法要比原始贪婪算法快,并且如果C真的很小,其速度可能比最著名的算法快(尽管我对此表示怀疑)。O(Cnlogn)O(Cnlog⁡n)O(C n \log n)CCCo(n2)o(n2)o(n^2)CCC 一些特定于问题的属性可能有助于确定界限:添加的边权重始终大于图中已存在的任何边的权重(不一定严格地更大)。此外,它的权重比u和v之间的最短路径短。(u,v)(u,v)(u,v)uuuvvv 您可以假定顶点对应于2d平面中的点,并且顶点之间的距离是这些点之间的欧几里得距离。也就是说,每个顶点对应于平面中的某个点(x ,y ),并且对于边(u ,v )= ((x 1,y …


3
为什么此代码具有独特的可解码性?
源字母:{a,b,c,d,e,f}{a,b,c,d,e,f}\{a, b, c, d, e, f\} 码字母表:{0,1}{0,1}\{0, 1\} a:0101a:0101a\colon 0101 b:1001b:1001b\colon 1001 c:10c:10c\colon 10 d:000d:000d\colon 000 e:11e:11e\colon 11 f:100f:100f\colon 100 我认为,要使代码唯一可解码,就必须无前缀。但是在此代码中,例如,代码字ccc是代码字fff的前缀,因此它不是无前缀的。但是我的教科书告诉我,它的反向符号是无前缀的(我不明白),因此它是唯一可解码的。有人可以解释这是什么意思,或为什么它具有独特的可解码性吗?我知道它满足卡夫食品的不平等,但这只是一个必要条件,不是充分条件。

6
我们可以使用无理数(如π和e)生成随机数吗?
,和等无理数在小数点后具有唯一且不可重复的序列。如果我们从这样的数字中提取第个数字(其中是调用该方法的次数),并按原样制作一个数字,我们是否不应该得到一个完美的随机数生成器?例如,如果我们使用,和,则第一个数字是123,第二个数字是471,下一个数字是184,依此类推。ππ\piËee2–√2\sqrt{2}ñnnñnn2–√2\sqrt{2}Ëeeππ\pi

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.