我有一个与树有关的问题。我对“汽车”这个主题有大约100个句子。这些句子基本上讲的是一辆汽车。如果用户提交查询:“查找单词之间的单词链接的所有组合”engine“和”oil“。”我想找到所有可能的单词链接,以便“引擎”和“油”通过一个句子中的任意数量的相似单词连接起来。所有组合树算法
例如,
- 发动机运转时发热。
- 汽车有一个引擎。
- 汽车使用油。
在这种情况下,答案将是:engine-> car-> oil(三字组合)。我想找到所有可能的组合,以便最终“引擎”和“油”彼此连接。它不是最短的路径,也不是最长的路径,而是所有可能的路径都沿着各个方向和词汇。当然,只要路径不相似,甚至可以有1000个字组合来达到“引擎”和“机油”。
有没有办法做到这一点。我尝试使用面包先,但它有点棘手。例如组合可以。
- 发动机 - >小车 - >运行 - >停止 - >油
- 发动机 - >小车 - >油
- 发动机 - >快> brake->油
任何人都可以请帮我解决一下这个。这里的逻辑和想法是什么。我不能忽视我已经访问过的一个词,因为这会停止算法,并且不会给我所有的链接。
请帮助和见解。
谢谢。
fa323
你一定会找到周期......你想怎么处理它们? – 2010-12-17 09:21:25
你一定不会在树上找到循环。 – 2010-12-17 10:05:56
但这不是一棵树,它是一个通用图 – ltjax 2010-12-17 13:06:43