查看是否由两个单词组成

来源:互联网 发布:海思麒麟 知乎 编辑:程序博客网 时间:2024/04/30 12:22

给定一个词典,新添一个词条,查看这个词条是否由词典中的两个词组成?


首先想到的就是用hash的方法,将这个词拆分为两半,查看前面和后面的词是否在词典中。时间复杂度是o(n)


还有一种方法,就是用trie。正向词建trie,逆向词建trie,然后在正向trie树中查找词条,记录在过程中可以成词的位置。在逆向trie中从后向前查找词条,一旦遇到可以成词的位置,并且这个位置和之前记录的位置对应。时间复杂度也是o(n)

原创粉丝点击