language-agnostic相关内容

你从这个破碎的随机洗牌得到什么分布?

著名的费雪耶茨洗牌算法可以用来随机重排的长度为N的数组答: 对于k = 1到N 选择一个随机整数j给K到N 交换A [k]和A [J]。 这是我一直在说一遍又一遍不要让一个常见的​​错误是这样的: 对于k = 1到N 选择一个随机整数j从1到N 交换A [k]和A [J]。 也就是说,不是选择一个随机整数k以N,你从1挑到N的随机整数。 如果 ..
发布时间:2015-11-30 13:17:31 C/C++

我如何衡量两幅图像之间的相似性?

我想比较的一个应用截图(可以是网页)以previously采取截图,以确定应用程序是否正确显示自身。我不想精确匹配的比较,因为高宽可以是稍有不同(在一个Web应用程序的情况下,根据浏览器,一些元件可以以稍微不同的位置)。它应该给的是多么相似截图的措施。 有一个库/工具,它已经这样做了吗?你将如何实现它? 解决方案 这完全取决于你想如何聪明的算法来定。 例如,这里有一些问题: 在裁剪的图像 ..
发布时间:2015-11-30 13:17:25 C/C++

有一个固定的子集大小总和子集

借助总和子集的问题规定: 给出一个整数集,是有一个非空的子集,其总和为零? 这个问题是NP完全的总称。我很好奇,如果这种轻微变形的复杂性是众所周知的: 给出一个整数集,是有大小的一个子集 K 的总和为零? 例如,如果 K = 1 ,你可以做一个二进制搜索找到答案O(log n)的。如果 K = 2 ,那么你可以把它降低到为O(n log n)的(如见 是否存在已知的绑定,可以放置 ..
发布时间:2015-11-30 13:17:01 C/C++

什么算法给出了一个拼写检查的建议?

实施一个拼写检查器是伴随着字的建议时,通常用什么算法? 起初我以为这可能是有意义的检查每一个新词和输入(如果在字典中未找到)反对的 Levenshtein距离从字典中的每一个其它字和返回顶端的结果。然而,这似乎是这将是非常低效的,不必重复评估整个字典。 这是如何典型的做法? 解决方案 有好文章由彼得·诺维格如何实现一个拼写校正。这是basicly蛮力方式试图与给定的编辑距离的候选串。 (这 ..

转换的均匀分布正态分布

我怎么能转换成一个均匀分布(大多数随机数发生器产生,如0.0到1.0之间),成正态分布?如果我想有一个均值和我选择的标准偏差? 解决方案 在通灵塔算法是pretty的高效对于这一点,虽然箱穆勒变换是更容易从头开始实施(而不是疯狂的慢)。 ..
发布时间:2015-11-30 13:16:01 C/C++

获得最接近的字符串匹配

我需要一种方法来多个字符串比较测试字符串,返回近似于它的字符串: 测试字符串:棕色狐狸跳过了红牛 选项​​A:红牛跃过绿色鸡 选项​​B:红牛一跃超过红牛 选项​​C:红狐跃过褐牛 (如果我正确地做这个)最近的字符串为“测试字符串”应该是“选项C”。什么是做到这一点的最简单的方法是什么? 我计划在实施这一成多国语言,包括VB.net,Lua中,和JavaScript。此时,伪cod ..

算法寻找最少矩形以覆盖一组矩形

我有一组矩形,我想“减少”的设置,所以我有数量最少的矩形来描述同一地区原设定。如果可能的话,我想它也快,但我更关心的是获得矩形尽可能低的数量。我现在有一个方法,它工作的大部分时间。 目前,我开始在顶部,最左边的矩形,看能不能扩大它的权利,并同时保持一个矩形下来。我这样做,直到不能再扩大,删除和分裂的所有相交的矩形,并添加扩展矩形早在列表中。然后我与下一左上角最矩形重新开始的过程中,等。但在某些情 ..
发布时间:2015-11-30 13:15:09 C/C++

如何花车转换为人类可读的分数?

让我们说我们有0.33,我们需要输出“1/3”。 如果我们有“0.4”,我们需要输出“2/5”。 这样做是为了让人类可读的,使用户了解“X部分出Y”作为理解数据的更好的方法。 我知道比例是一个很好的替代品,但我不知道是否有一种简单的方法来做到这一点? 解决方案 我发现大卫Eppstein的的找到有理逼近给定的实数的C code到是你问什么了。它基于连分数理论和速度非常快,相​​当紧凑。 ..
发布时间:2015-11-30 13:14:30 C/C++

递归或迭代?

有没有性能损失,如果我们使用循环而不是递归或反之亦然算法,其中两个可以达到同样的目的?例如:检查是否给定的字符串是回文。 我已经看到了使用递归作为一种手段来炫耀,当一个简单的迭代算法可以配得上很多程序员。 该编译器在决定使用什么样的发挥至关重要的作用? 解决方案 这是可能的递归会更昂贵,取决于该递归函数的尾递归(最后一行是递归调用)。尾递归的应该的编译器识别和优化,其迭代对应(在保持简洁,清晰 ..
发布时间:2015-11-30 13:13:57 C/C++

你如何检测基于一些信用卡类型?

我想弄清楚如何检测其数量完全根据信用卡的类型。有谁知道一个明确的,可靠的方法来找到这个? 解决方案 的信用卡/借记卡号码被称为 PAN 或主帐号的。银行识别 - 潘的前六位从 IIN 或发卡行识别号的,属于开证行(不结盟研究所为previously称为BIN拍摄数字 - 所以你可能会看到某些文档中提及的术语)。这些六位受国际标准, ISO / IEC 7812 的,并且可以被用来确定的类型机卡 ..
发布时间:2015-11-30 13:13:52 C/C++

图法之间找到任意两个顶点所有连接

我想,以确定最佳的时间有效的算法来完成下面描述的任务。 我有一组记录。对于此组记录我这表明如何对从该记录集连接到另一个连接数据。这基本上重新presents无向图,与记录作为顶点和连接数据的边缘。 所有的在该组中的记录有连接信息(即没有孤立记录是present;在该组的每个记录连接到一个或多个其它的记录中设定的)。 我要选择的任何两个记录从集合,并能够显示所选择的记录之间的所有简单路径。通过 ..
发布时间:2015-11-30 13:13:42 C/C++

什么是尾调用优化?

很简单,什么是尾部调用优化?更具体地讲,任何人都可以表现出一些小的code片段,它可以适用,并在不与一个解释,为什么? 解决方案 尾调用优化是你能避免功能分配一个新的堆栈帧,因为调用函数将简单的返回它从得到的值调用的函数。最常见的用途是尾递归,在这里写了一个递归函数来充分利用尾部调用优化可以使用常数堆栈空间。 计划是这保证了规范,任何实现必须提供这种优化的一些编程语言之一的(JavaScri ..

方程用于测试点是否一个圆内

如果您有圆心(center_x,center_y)和半径半径,你怎么当测试一个给定的点坐标(X,Y)是圈子里面? 解决方案 在一般情况下, X 和是绝满足(X - center_x)^ 2 +(Y - center_y)^ 2版;半径^ 2 。 请注意,满足上述方程&LT点; 按替换== 被认为是点在的圆圈,并满足上述方程&LT点; 替换为> 被认为是的之外的圈子。 ..
发布时间:2015-11-30 13:12:34 C/C++

求数的所有可能的组合,以达到给定的总和

你会如何去测试添加的所有可能的组合从一组给定的数字,使他们加起来一个给定的最终数量? 例如: 设置数增加:{1,5,22,15,0,...} 期望的结果:12345 PS:问这个问题,因为数学是不是我的专长,不知道如何能够适应于code 。 解决方案 这问题可与所有可能的和过滤掉那些到达目标的递归组合来解决。这里是算法的Python: 高清subset_sum(数字,目标,部分= [] ..
发布时间:2015-11-30 13:12:19 C/C++

为O唯一的(不重复)的随机数(1)?

我想产生一个介于0和1000独特的随机数,永远不会重复(即6显示不出来两次),但是,这并不求助于像一个O(N)搜索previous值来做到这一点。这可能吗? 解决方案 初始化的1001整数的数组与值0-1000和设置一个变量,最大,到阵列的当前的最大索引(从1000)。选择一个随机数R,在0和最大值,交换数在与数的位置r处位置max和现在返回数量在位置最大。按1递减max和继续。当max是0,回 ..
发布时间:2015-11-30 13:12:04 C/C++

尾递归是什么?

虽然开始学习口齿不清,我遇到这个词的尾递归的。这是什么意思? 解决方案 尾递归是很好的描述在previous答案,但我认为,在行动的一个例子有助于说明这一概念。 考虑一个简单的功能,其将所述第一N个整数。 (例如:和(5)= 1 + 2 + 3 + 4 + 5 = 15 )。 下面是一个使用递归一个简单的Python实现: 高清recsum(X): 如果x == 1: 返回X 其他: 返回 ..

如何检查一个AJAX请求的真实性

我设计了一个网站,其中用户解决难题,迅速,因为他们可以。 JavaScript用于时间每个难题,并毫秒数是当拼图完成后通过AJAX发送到服务器。我怎样才能确保由服务器收到的时间不是由用户伪造? 我不认为一个基于会话的真实性令牌(用于形式Rails的那种)就足够了,因为我需要验证的来源的请求的价值,而不仅仅是合法性 有没有办法来加密签名的要求?我想不出任何可以不被黑客复制。是任何JavaScri ..
发布时间:2015-11-28 23:19:26 前端开发

优雅降级 - 时要考虑

在设计和构建用户界面,使用AJAX的应用程序,当你认为优美的退化(为用户谁已禁用JavaScript,或者使用屏幕阅读器)? 在年底,一旦AJAX版本的网站彻底完成 在开发的每个阶段 在我没有 在别的东西... 解决方案 这些天,逐步增强一般是preferred超过优雅降级 - 也就是完全相反的做法 ..
发布时间:2015-11-28 22:56:21 前端开发

矢量图形颜色填充算法?

我工作的一个简单的绘图应用程序,而我需要一个算法,使洪水罢了。 用户的工作流程看起来像这样(像Flash CS,只是更简单): 用户绘制的直接工作区线。这些被视为矢量,并可以选择和移动绘制之后它们。 用户选择填充工具,并点击绘图区域。如果该区域是由线在每一个方向包围的填充被施加到该区域。 如果该线被移动填充被施加后,填充的区域被相应地改变。 任何人有一个不错的主意,如何实现这样的算法?主要 ..

发现质量中心上的2D位图

我编码一个游戏,我希望能够找到一个任意形状的质量对一个黑白位图的中心,像这样的: 012345678 0.XX ...... 1..XXX .... 2 ... ... XXX 3..XXXXXXX 4 ... XXX ... 所有“细胞”,具有相同的重量。对角相邻单元不被认为被连接,并且所述形状将始终是单个之一,因为它是在此之前已经分裂另一个功能 它只会被用于合理低分辨率(也许50 ..
发布时间:2015-11-28 14:57:08 跨浏览器开发