Algorithm 对句子数组生成布尔搜索,将结果分组为n个或更少的结果

Algorithm 对句子数组生成布尔搜索,将结果分组为n个或更少的结果,algorithm,search,full-text-search,Algorithm,Search,Full Text Search,我觉得这个很奇怪。这是一个我开始尝试解决的问题,现在我只想知道答案或者至少是一个起点 我有一个x个句子的数组 我计算了每个单词出现的句子数量 我计算了每个单词与其他单词一起出现的句子数量 我可以使用典型的不区分大小写的布尔搜索子句(和+/-单词)搜索句子 我的数据结构如下所示: { words: [{ word: '', count: x, concurrentWords: [{ word: '', count: x }] }] } 我需要生成一个搜索数组,该数组将句子分组为n个大小或更小

我觉得这个很奇怪。这是一个我开始尝试解决的问题,现在我只想知道答案或者至少是一个起点

  • 我有一个x个句子的数组
  • 我计算了每个单词出现的句子数量
  • 我计算了每个单词与其他单词一起出现的句子数量
  • 我可以使用典型的不区分大小写的布尔搜索子句(和+/-单词)搜索句子
我的数据结构如下所示:

{ words: [{ word: '', count: x, concurrentWords: [{ word: '', count: x }] }] }
我需要生成一个搜索数组,该数组将句子分组为n个大小或更小的数组。

我不知道是否有可能以一种可预测的方式这样做,所以近似值很酷。解决方案不必使用我的单词数组和它们的计数这一事实。我是用JavaScript做的,这不重要


提前感谢

你能提供一个例子吗,这看起来很有趣me@Alundrathedreamwalker我很乐意使用JSON格式,因为这似乎是最有意义的,不是因为我的代码得到了这样的输入,而是它解析了一大块文本并将其按行分割。实际数据可能会超过2000项,但使用的词有很多交叉。明白了,还有一件事:concurrentWords是什么意思?在你的context@Alundrathedreamwalker它是输出数组中每个项出现在句子中的每个单词的(sortof)哈希表,其值是它们一起出现的次数。例如,“独特”一词与“想要”、“保持”、“计数”、“低”、“句子”、“乌龟”、“列表”一起出现一次,与“The”、“word”和“this”一起出现两次。谢谢你花时间考虑这个问题。我想到的第一件事是使用RegEx,你用它试过吗?