Tag: algorithm

有效地查询一个string与多个正则expression式

比方说,我有10,000个正则expression式和一个string,我想知道是否string匹配任何一个,并获得所有的匹配。 做这件事的简单方法是只针对所有正则expression式查询string。 有没有更快,更有效的方法来做到这一点? 编辑:我试图用DFA(lex)代替它这里的问题是,它只会给你一个单一的模式。 如果我有一个string“hello”和模式“[H | h] ello”和“。{0,20} ello”,DFA将只匹配其中一个,但我希望他们两个打。

遗传algorithm和进化algorithm之间的区别?

遗传algorithm和进化algorithm有区别吗? 我已经阅读了多篇论文,谈论遗传或进化algorithm,虽然非常相似,但我认为它们可能不是同一回事。

Google采访:块的安排

给你N个高度为1 … N的块。 您可以在多less种方式中排列这些块,使得从左侧看时只能看到L个块(其余块被较高的块遮挡),从右侧看只能看到R个块? 给定N=3, L=2, R=1例子N=3, L=2, R=1只有一种排列{2, 1, 3}而对于N=3, L=2, R=2 ,有两种方式{1, 3, 2}和{2, 3, 1} 。 我们应该如何通过编程来解决这个问题? 任何有效的方法?

如何在O(n)时间的SORTED数组中find出现奇数次的数字?

我有一个问题,我试图一遍又一遍地思考这个问题,但没有在这里发表这个问题。 也许我可以从别人的angular度来看待这个问题,试着让它发挥作用。 问题是:我们得到一个SORTED数组,其中包含偶数次出现的值的集合,除了出现ODD次数的值之外。 我们需要在日志中find解决scheme。 在O(n)时间很容易find解决scheme,但在日志中执行看起来相当棘手。

红眼减lessalgorithm

我需要为我正在处理的应用程序实施红眼减less。 谷歌search主要提供商业terminal用户产品的链接。 你知道一个好的红眼减lessalgorithm,可以在GPL应用程序中使用吗?

像last.fm,grooveshark,pandora这样的推荐网站背后的algorithm是什么?

我正在考虑启动一个基于build议系统的项目。 在这个看起来像networking热门话题的领域,我需要提高自己。 也想知道什么是algorithmlastfm,grooveshark,潘多拉使用他们的推荐系统。 如果您知道任何书籍,网站或任何资源这种algorithm,请通知。

从一亿个数字中检索前100个数字

我的一个朋友被问了一个问题 从一亿个数字中检索最大的100个数字 在最近的一次求职面试中 你有什么想法想出一个有效的方法来解决它?

Java在O(1)合并2个集合

我需要能够将2个大集合合并为1.哪种集合types最适合我? 我不需要随机访问各个元素。 通常我会去找一个链表,但是我不能将2个链表在Java中与O(1)的运行时相结合,这可以用其他语言来完成,因为我必须将每个元素复制到新列表中。 编辑:谢谢你的答案。 你的回答都非常有帮助,我设法完成了工作。 下一次,我将使用我自己的实现一个链接列表开始。

平滑价值随着时间的推移:移动平均或更好的东西?

我正在编写一些东西,我正在从一个硬件指南针随着时间的推移一堆价值。 这个指南针是非常准确的,经常更新,结果是,如果它轻微抖动,我会得到与其邻居大不相同的奇数值。 我想要平滑这些价值观。 经过一些阅读,看来我想要的是高通滤波器,低通滤波器或移动平均。 移动平均数我可以记住,只是保留最后5个值的历史logging,或者在我刚刚使用最近值的代码中使用这些值的平均值。 我认为,这应该很好地消除这些抖动,但是这让我觉得这可能是效率很低的,这可能是适合程序员的已知问题之一,其中有一个巧妙的math解决scheme。 然而,我是那些可怕的自学成才的程序员之一,没有任何与CompSci或Math相关的正规教育。 仔细阅读,可以看出这可能是高通滤波器或低通滤波器,但是我找不到任何可以用像我这样的黑客理解的东西来解释这些algorithm对一系列值的影响,更不用说如何math作品。 例如, 在这里给出的答案在技术上确实回答了我的问题,但仅仅是对那些可能已经知道如何解决问题的人来说是可理解的。 这真是一个非常可爱,聪明的人,他可以用这个问题来解释这个问题,以及这个解决scheme是如何工作的。

一个整数序列的最佳压缩algorithm

我有一个大范围的大多数连续的整数,例如1-100,110-160等所有整数都是正数。 什么是最好的algorithm来压缩这个? 我试过放气algorithm,但是这只给了我50%的压缩。 请注意,该algorithm不能是有损的。 所有的数字都是独一无二的,并逐渐增加 另外如果你能指点我这个algorithm的java实现,那将是很棒的。