用于查找具有相似含义的单词的最佳数据结构

时间:2016-06-15 08:40:02

标签: algorithm data-structures binary-tree binary-search-tree

我使用二叉树数据结构设计字典。但是我要求从二叉树数据结构中找到类似的含义词。我想知道二进制树数据结构是否可以修改以实现它,或者是否有其他数据结构支持此要求

1 个答案:

答案 0 :(得分:3)

您可以使用Disjoint Sets数据结构来构建初步数据。

每个同义词包都有主要的代表词。如果两个词共享相同的代表,则它们是同义词。

当所有词汇单词都分配给组时,请使用包含组的列表填充地图(字典,散列图)。每个单词的关键是代表性的。

因此,要获得给定单词的同义词,您必须:
-take代表这个词
- 找到该代表的地图条目
-extract此地图条目中的同义词列表

当然,正如Christofer Ohlsson所注意到的,同音异义词(同一个词的不同含义)使问题更难解决。