计算机科学

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

3
大O:嵌套循环依赖
我收到了Big O的作业分配。我受嵌套的for循环的困扰,该循环取决于先前的循环。这是我的作业问题的修改版本,因为我确实很想理解它: sum = 0; for (i = 0; i < n; i++ for (j = 0; j < i; j++) sum++; 让我失望的j < i部分是那部分。似乎它几乎像阶乘一样执行,但是要加上。任何提示将不胜感激。

1
有效地删除重复项并降低内存开销
我想以一种只需要存储结果集的方式有效地过滤重复项的整数列表。 一种可见的方式: 我们有一个整数范围其中大(例如)N 2 40小号= { 1 ,...,N}S={1,…,N}S = \{1, \dots{}, N\}ñNN2402402^{40} 我们有一个函数,据说它有很多碰撞(图像均匀地分布在)SF:S→ Sf:S→Sf : S \to S小号SS 然后,我们需要存储,即{ f (x )| X ∈ 小号}F[ S]f[S]f[S]{ ˚F(x )| X ∈ 小号}{f(x)|x∈S}\{f(x) | x \in S\} 我对有一个非常准确的(概率性)估计。是,因此可以预先分配数据结构(例如)。| f [ S ] | ≈ 2 30| F[ S] ||f[S]||f[S]|| F[ S] | …

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

3
图像处理中的卷积直觉
我已经阅读了许多有关图像处理中卷积的文档,其中大多数都涉及卷积的公式和一些其他参数。没有人解释对图像进行卷积背后的直觉和真正含义。例如,图上的直觉使它更线性。 我认为该定义的简短摘要是:卷积乘以图像和内核之间的重叠平方,然后再将其求和并放入锚点。这对我来说毫无意义。 根据这篇有关卷积的文章,我无法想象为什么卷积可以做一些“令人难以置信的”事情。例如,此链接最后一页上的线条和边缘检测。只需选择适当的卷积核即可取得很好的效果(检测线或检测边缘)。 任何人都可以就如何做到这一点提供一些直觉(不必一定要有一个整洁的证据)吗?


2
一阶逻辑验证简介
我正在尝试向自己教授软件验证的不同方法。我读了一些文章。据我了解,带有时间的命题逻辑通常在SAT求解器中使用模型检查(在进行中的-反应系统中),但是带有时间的一阶逻辑又如何呢?它使用定理证明吗?还是可以使用SAT? 非常感谢初学者在这本书上指向书籍或文章的任何指针。

1
算术表达式语法转换
在Theodore Norvell(1999)的文章“ 递归下降解析表达式”中,作者从算术表达式的以下语法入手: E --> E "+" E | E "-" E | "-" E | E "*" E | E "/" E | E "^" E | "(" E ")" | v 这很糟糕,因为它是模棱两可的并且是左递归的。因此,他从移除左递归开始,其结果如下: E --> P {B P} P --> v | "(" E ")" | U P B …

1
可以用map-reduce运算来表达人工神经网络算法吗?
可以用map-reduce运算来表达人工神经网络算法吗?我还更一般地对应用于ANN的并行化方法及其在云计算中的应用感兴趣。 我认为一种方法将涉及在每个节点上运行完整的ANN并以某种方式集成结果以便将网格像单个实体一样对待(就输入/输出和机器学习特性而言)。即使在这种情况下,我也很好奇这样的整合策略可能会是什么样子。

5
为了理解计算机科学的离散数学/结构,人们需要知道多少数学?
通常,大学教授离散数学/离散结构。我的问题是,要了解这一领域,一个人需要知道多少数学?是否需要微积分或微积分会好吗?要了解这一领域,需要做一些证明吗? 谢谢大家的答案。 注意:很抱歉,如果已经问过这个问题。经过我的调查,我找不到任何类似的问题。如果您认为是这种情况,请分享已经回答的地方,我很乐意结束/删除此问题。

1
为什么取消负周期的复杂度?
我们想用通用的负周期抵消算法来解决最小成本流问题。也就是说,我们从随机有效流开始,然后我们不选择任何“良好”负周期,例如最小平均成本周期,而是使用Bellman-Ford发现最小周期并沿发现的周期增加。设为图中节点的数量,为边的数量,为图中边缘的最大容量,为图中边缘的最大成本。然后,我的学习资料声称:VVVAAAUUUWWW 开始时的最高费用不得超过AUWAUWAUW 沿一个负周期的增加将成本降低至少一个单位 最低费用的下限是0,因为我们不允许负费用 每个负周期都可以在O(VA)O(VA)O(VA) 并且他们从中得出算法的复杂度为。我理解每个声明背后的逻辑,但认为复杂性不同。具体来说,最大扩充数量由每个扩充的一个流量单位给出,将的成本降至零,从而为我们提供了最大的扩充。我们需要为每个发现一个负循环,因此我们将最大扩增次数乘以发现一个循环所需的时间(),并得出算法的。O(V2AUW)O(V2AUW)O(V^2AUW)AUWAUWAUWAUWAUWAUWVAVAVAO(A2VUW)O(A2VUW)O(A^2VUW) 这可能是学习资料中的错误(这是教授提供的文字,而不是课程中的学生笔记),还是我的逻辑错误?



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

3
研究反病毒程序如何工作的计算机科学分支是什么?
这是在有限自动机中的一项琐碎练习,目的是表明没有可以检测所有病毒的算法,但是有许多销售反病毒软件的软件公司。 CS的任何部分都涉及病毒和反病毒吗? PS:我不是在问是否拥有AV的非CS相关理由,而是问他们属于CS中的哪个类别/主题(如果有)。如果AV不是CS中的主题,那么这也是可以接受的答案,CS上下文中是否对病毒和AV有任何反感?

1
具有OR和MOD门的Depth-2电路不是通用的吗?
众所周知,每个布尔函数都可以使用深度为2的布尔电路来实现(在变量,它们的求反和常量值上)在第一层包含“与”门,在上层包含一个“或”门;这仅仅是DNF表示的。˚Ff:{0,1}n→{0,1}f:{0,1}n→{0,1}f:\{0,1\}^n\to \{0,1\}fff 在电路复杂度方面非常受关注的另一种门是门。通常的定义如下:MODmMODmMOD_m MODm(x1,…,xk)={10 if ∑xi≡0modm if ∑xi≢0modm MODm(x1,…,xk)={1 if ∑xi≡0modm 0 if ∑xi≢0modm \mathrm{MOD}_m(x_1,\dots,x_k)=\cases{ 1 & if \(\sum x_i \equiv 0 \mod m\) \\ 0 & if \(\sum x_i \not\equiv 0 \mod m\) \\ } 这些大门有时具有令人惊讶的力量。例如,任何布尔函数都可以由仅具有MOD6MOD6\mathrm{MOD}_6门的depth-2电路表示(这是民间传说,但我可以说是有兴趣的人)。 但是,另一种说法是,在顶层具有单个“或”门而在底层具有MODmMODm\mathrm{MOD}_m门的电路(其中mmm一劳永逸,特别是对于所有门都是相同的)通用的,即对于任何m值mmm,都有OR∘MODmOR∘MODm\mathrm{OR} \circ \mathrm{MOD}_m电路无法计算的布尔函数。 我正在寻找这种说法的证据,或者至少是一些方向的证据。

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.