问题标签 [matching]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
86 浏览

graph-theory - 在异构集合之间找到最佳的 2x2 匹配

我有一个问题:

我有一个 A 类和一个 B 类,可以通过编程检查它们的实例对象是否在不同数量上彼此相似或不同。例如,它们可能完全匹配,或者完全不同(即使类别不同,它们仍然可以表示相同的信息并且得分相同。)

现在,给定两个集合,一个是 A,一个是 B,将 As 和 B 配对的最佳方式是什么,以使它们最匹配,如果任一集合大于另一个集合或如果某些 As 或 B 完全不同而无法匹配?

我的第一次尝试是创建一个二维数组,其中每个单元格都是匹配的“分数”(0 = 完美,数字越大越差),并在每条路径中递归查找最低累积分数。这行得通,结果很完美,但速度非常慢。

关于更有效算法的任何想法?

如果您想知道,我的 A 类代表一个混音器输入通道,我的 B 代表相同的持久状态(称为场景)。我要解决的问题是如何将场景导入现有混音器,其中场景 (B) 可能与任何现有通道 (A) 略有不同甚至高度不同。如果我可以稍微修改任何一个以匹配,我不想只添加频道 (A)。例如,我可以在 A 中添加一个效果插入,以便与 B 完美匹配,避免添加另一个 A。

麦克风

0 投票
5 回答
4481 浏览

algorithm - n维匹配算法

在这里寻找一些建议。有谁知道在 n 维空间中开始研究匹配算法的好地方。例如,任何约会网站都必须使用某种算法来匹配 2 个人。我读到的是,我们可以将一个人的特征映射到一个 n 维数组中,每个特征都有一个点系统。一旦我们拥有了一个人的所有(可用)特征,我们就可以在一个 n 维数组中的一个点中表示这个人。然后,匹配 2 个人就像在这个 n-dim 数组中找到 2 点之间的最短距离一样简单。有没有人在实现这类算法时有任何参考?写这些东西的最佳语言是什么?

0 投票
2 回答
2183 浏览

design-patterns - 从 SQL 中的 LIKE 约束返回的列值之间的匹配

我正在尝试匹配返回的列值,但值是作为模式匹配的结果返回的:

如您所见,我正在尝试检索一些列值,但 java derby 工具说:

错误 42884:未找到具有兼容参数的“FUNCTION”类型的名为“LIKE”的授权例程。

我该怎么办?

0 投票
2 回答
337 浏览

php - php & mysql 订阅搜索/匹配查询

我有一个房地产网站,它有几个类别。我希望用户能够通过电子邮件订阅某个优惠列表,它们可以是某个类别的优惠……也可以是搜索列表中的优惠。

我如何存储他们在 mysql 中订阅的最佳方式……以及我如何进行通知。

我想出的最好的办法是在 mysql 表中存储一个带有用户 ID 的 mysql 字符串,并运行一个 cron 来获取所有这些并遍历它……运行 cron,如果有新广告,它会发送一封电子邮件。

但我认为这不是最好的主意,因为这也意味着如果数据库设计(例如,字段名称)发生变化,那么所有这些查询都会出错。

多谢

0 投票
3 回答
6878 浏览

c++ - 使用 Boost 的 regex_match 编译 C++ 代码

鉴于此代码:

使用此命令编译:

它给出了这个错误:

我的代码有什么问题?

如果我在第 26 行删除“const”并使用相同的命令进行编译。我会得到这个错误:

更新:

通过此编译和链接解决:

0 投票
5 回答
3936 浏览

c# - C#:在字符串中查找字符串的实例

假设我有字符串“1 AND 2 AND 3 OR 4”,并且想要创建一个字符串数组,其中包含在字符串中按顺序找到的所有子字符串“AND”或“OR”。

所以上面的字符串会返回一个 {"AND", "AND", "OR"} 的字符串数组。

什么是聪明的写作方式?

编辑:使用 C# 2.0+,

给我{“1”,“AND”,“2”,“AND”,“3”,“OR”,“4”},这不是我想要的。我怎样才能将其简化为 AND 和 OR?

0 投票
5 回答
6936 浏览

c++ - 二分匹配

如何在 C 或 C++ 中实现二分匹配算法(可能基于最大流算法)?

具体来说,我在一个文件中有这个输入: (1,3) (1,5) (2,5)

(M,F) --> 其中 M 代表 MALE 的 id,F 是 FEMALE 的 id。

我需要找到最大匹配数并显示匹配的情侣。喜欢:匹配:1&3、2&5

我读过一些书,我可以将这个问题建立在“网络中的最大流量”算法上,但除了“这个问题可以通过......算法解决”这句话之外,我找不到任何具体信息。我对最大流量知之甚少,也不知道如何实现它......

0 投票
6 回答
708 浏览

algorithm - 匹配算法

奇怪的问题不是真正的代码而是逻辑,希望可以在这里发布,在这里

我有一个可以被认为是图表的数据结构。每个节点可以支持许多链接,但仅限于每个节点的值。所有链接都是双向的。每个环节都有成本。成本取决于节点之间的欧几里得差异,每个节点中两个参数的最小值。和一个全局修饰符。

我希望找到图表的最大成本。

想知道是否有一种聪明的方法可以找到这样的匹配,而不是通过蛮力进行......这很丑陋......而且我不确定如果不花费 700 万年的时间运行它,我什至会如何做到这一点。

澄清:

节点的平均值为 40-50 范围为 (20..600) 平均节点链接因子为 3 范围 0-10。

0 投票
7 回答
2605 浏览

c# - 多次使用 C# 比较 2 个巨大的列表(稍作改动)

大家好,你们来到这里的社区很棒。我是一名电气工程师,一边做一些“编程”工作以帮助支付账单。我这样说是因为我想让你考虑到我没有接受过适当的计算机科学培训,但我在过去的 7 年里一直在编码。

我有几个带有信息的excel表格(全是数字),基本上它是一列中的“拨打的电话号码”和另一列中每个数字的分钟数。另外,我有一个我所在国家/地区不同运营商的“运营商前缀代码”列表。我想要做的是将每个运营商的所有“流量”分开。这是场景:

第一个拨打的号码行123456789ABCD,100 <-- 这将是一个 13 位数的电话号码和 100 分钟。

我有一个运营商 1 的 12,000 多个前缀代码的列表,这些代码的长度各不相同,我需要检查每个人:

前缀代码 1 : 1234567 <-- 此代码长 7 位。

我需要检查所拨号码的前 7 位数字并将其与所拨号码进行比较,如果找到匹配项,我会将分钟数添加到小计中以备后用。请注意,并非所有前缀代码的长度都相同,有时它们会更短或更长。

其中大部分应该是小菜一碟,我应该能够做到,但我对大量数据感到有点害怕;有时拨打的号码列表包含多达 30,000 个号码,而“运营商前缀代码”列出了大约 13,000 行,我通常会检查 3 个运营商,这意味着我必须做很多“匹配”。

有谁知道如何使用 C# 有效地做到这一点?或任何其他语言,老实说。我需要经常这样做,并且设计一个工具来做到这一点会更有意义。我需要一个具有“计算机科学家”背景的人的良好视角。

列表不需要在 excel 工作表中,我可以导出到 csv 文件并从那里工作,我不需要“MS Office”界面。

谢谢你的帮助。

更新:

谢谢大家花时间回答我的问题。我想在我的无知中我过分夸大了“高效”这个词。我不会每隔几秒钟执行一次这项任务。这是我每天必须做一次的事情,我讨厌使用 Excel 和 VLOOKUP 等。

我从你们那里学到了新的概念,我希望我能用你们的想法建立一个解决方案。

0 投票
2 回答
442 浏览

html - 提高我的正则表达式技巧

很长一段时间以来,我一直想提高我的正则表达式技能,并且多次推荐“掌握正则表达式”,所以我买了它,并在过去一天左右一直在阅读它。

我创建了以下正则表达式:

它与前两个链接匹配,但忽略了<i>标签所包含的两个链接。它提取 id、title 和 type。

虽然可行,但对于这么简单的事情来说似乎相当长,可以改进吗?