我正在使用java中的pinyin4j包将单个中文字符转换为罗马字母(拼音)。然而,这通常会为一个字符产生多个拼音(相同的字符有不同的发音)。例如,字符C1转换为2个拼音形式p1和p2,字符C2转换为3个拼音形式,q1,q2,q3。
当我将C1C2组合成一个单词时,它会产生2*3=6组合。通常,其中只有一个是真正的单词。我想根据我构建的一个词典文本文件来检查这些组合,其中有许多行以\w开头,这是一个词法条目(因此,例如,在词典中只找到6个组合中的p1q2 )。我正在考虑将词典文件读入一个哈希集。然而,我不确定如何最好地实现整个过程。有什么建议吗?
发布于 2013-04-01 06:00:07
HashSet看起来还不错。如果词汇量非常大,并且你必须非常快,那么考虑使用Trie数据结构。然而,在Java语言中有no实现。
https://stackoverflow.com/questions/15734986
复制相似问题