C++,python,热爱算法和机器学习
全部博文(1214)
分类:
2011-03-26 09:01:44
字符串映射,查找,个人觉得这个字母树可以被更好的实现
题目大意:输入将给你一系类一一对应的字符串,称之为字典;之后将输入一个个单词,你需要在字典中查找是否存在该词的映射,如果存在输出对应的词,否则输出 "eh”
基本思路:很自然的想法是使用STL的map,通过map将字典词建立映射关系;经验证,这样的做法行得通,而且,对这个可以AC;但是,考虑到,题目描述中,每个词是由长度不超过10个的小写字母组成,这样一来更经典的想法是采用字母数。通过字母树建立映射,然后再通过字母树进行查找;可能你会想,map这么简单好用,还用字母树做甚,我不多说,看看下面便知:
基本算法实现:接受映射的输入,建立字母树;接受查询输入,在字母树上查询该词是否存在映射;字母树的实现很简单,通过简单的结构体即可,每个节点包含26个子节点,分别代表a,b,c...z26个字母,这样就可以形成一颗树
AC代码: