高效的标签组合算法

时间:2013-10-02 19:04:03

标签: algorithm tags combinations

假设我有一堆价值观:

[
   {tags: ["A", "B", "C"]},
   {tags: ["B", "C", "D"]},
   {tags: ["B", "C"]},
   {tags: ["D"]},
   {tags: ["E"]},
   {tags: ["A"]}
]

我希望能够输入标签,并返回其中的各种组合的计数。

例如,假设我有一个输入:

["A","B","C"]

该输入的各种组合将是:

A
AB
ABC
B
BC
C

逐一拍摄,与上述商店比较时,我会得到以下数据:

A    => 2
AB   => 1
ABC  => 1
B    => 3
BC   => 2
C    => 3

当然很明显,如果我使用SQL,我可以做一个简单的事情:SELECT count(*)FROM table WHERE tag =“A”......但很快就会失去对大输入的控制。

因此,以所有这些为背景,我希望能够像上面那样进行输入,并返回组合和计数,如上所述,但前提是它满足阈值计数。所以,类似于:SELECT [A,B,C] FROM表的所有组合WHERE表示组合的计数大于10;

0 个答案:

没有答案