Tag: 理论

什么是计算机科学的NP完整?

什么是NP完全问题? 为什么这是计算机科学中的一个重要话题?

C#中的“const正确性”

常量正确性的要点是能够提供用户不能更改或删除的实例的视图。 编译器通过指出什么时候从const函数中断开constness或试图使用const对象的非const函数来支持这一点。 所以,如果不复制常量方法,是否有一种方法我可以在C#中使用,有相同的目的? 我意识到不可变性,但是这并没有真正转向容器对象,只是举了一个例子。

计算机是否可以通过用户提供的示例“学习”正则expression式?

计算机是否可以通过用户提供的示例“学习”正则expression式? 澄清: 我不想学习正则expression式。 我想创build一个程序,从用户交互提供的例子中“学习”一个正则expression式,也许从文本中select部分或select开始或结束标记。 可能吗? 是否有algorithm,关键字等我可以谷歌? 编辑 :谢谢你的答案,但我对提供此function的工具不感兴趣。 我正在寻找理论信息,如论文,教程,源代码,algorithm名称,所以我可以为自己创造一些东西。

什么是参照透明度?

参考透明度这个术语是什么意思? 我听说它被形容为“这意味着你可以用等于代替等于”,但这似乎是一个不适当的解释。

数据库devise规范文本?

我发现在这个问题的答复中描述的Bertrand Meyer的面向对象的软件构造在逐渐成为面向对象方面是非常宝贵的。 它改变了我想写代码的方式,并且间接地影响了我从那时起写的大部分内容。 我需要在一些我正在使用的项目中使用一些中型数据库,而且我希望对关系数据库有相同的performance。 我理解的基本概念 – 表包含组织成列的数据行,一些列作为一个关键的特殊function,键用于构build不同表之间的行关系,但我有兴趣获得这个理论的一个句柄决定了数据库devise的最佳实践。 是否有一个规范的文本,我可以读取这种理解? 是否有每个专业DBA都读过的东西? 我将使用ORM – SQLAlchemy – 这些项目,但我有兴趣以平台不可知的方式学习概念,因为我发现大多数SQLAlchemy教程更多地关注SQLAlchemy的机制而不是数据库的基础知识。

JavaScript真的是全球性的吗?

在浏览器中使用这段JavaScript: <script> console.log(window.someThing); var x = 12; function foo() { window.otherThing = x; } </script> 我们可以进入window ,我们都知道,但为什么呢? 这是一种特殊的全局variables吗? 还是“根范围”(在script标签内)有它作为一个隐式的局部variables,它是简单的“闭包inheritance”,因为任何其他局部variables(如上面的x )可以是? 那么如何才能将script标签中直接声明的variables设置为window属性呢? (或者不是这样?) <script> var x = 12; function() { console.log(window.x); } </script>

高效地find可变数量的string集合的交集

我有一个可变数量的ArrayList的,我需要find的交集。 string数量的现实上限大概是35左右,但可能更多。 我不想要任何代码,只是想法什么是有效的。 我有一个实现,即将开始编码,但想听听其他一些想法。 目前,只是想着我的解决scheme,看起来我应该有一个渐近的Θ(n 2 )运行时间。 感谢您的帮助! tshred 编辑:澄清,我真的只是想知道有没有更快的方式来做到这一点。 比Θ(n 2 )更快。

什么是图灵完成?

“Turing Complete”是什么意思? 你可以给一个简单的解释,而不会涉及太多的理论细节?

如何testing随机性(例如 – Shuffling)

首先,这个问题是从这个问题中剔除的。 我这样做是因为我认为这部分比较长问题的一个子部分更大。 如果冒犯了,请原谅我。 假设你有一个产生随机性的algorithm。 现在你怎么testing它? 或者更直接 – 假设你有一套洗牌的algorithm,你怎么testing它是一个完全随机的algorithm? 给这个问题添加一些理论 – 一副牌可以在52中洗牌! (52阶乘)不同的方式。 拿一副牌,手工洗牌,记下所有牌的顺序。 你会得到这个洗牌的概率是多less? 答案:1/52! 在洗牌后,你有什么机会按顺序获得每套花色的A,K,Q,J …? 答案1/52! 所以,只要洗牌一次,看看结果就不会给你任何有关洗牌algorithm随机性的信息。 两次,你有更多的信息,三更甚至… 你将如何黑箱testing随机性洗牌algorithm?

什么是y-组合器?

y-combinator是从事物的“function”方面的comp-sci概念。 如果他们甚至听说过他们,大多数程序员对他们所知甚less。 什么是y-组合器? 他们如何工作? 他们有什么好处? 它们在程序语言中有用吗?