一个和搜索引擎相关的问题
例:打开百度,在百度的搜索栏上输入羊绒山,回车。百度会提示:您要找的是不是羊绒衫。
请问各位这个效果该怎么实现?望大家多多指点。
[解决办法]
http://topic.csdn.net/u/20070119/09/98f87ac4-06d7-41f6-8f58-1395ec63e7e3.html
原子:单词抠掉个别字母的子串,如:abc 中的ac bc ab abc注意:ca不算
有效原子:长度大于单词长60%的原子,可用于联想记忆,比较相似单词.
你要提前把系统词库拆分好,当有输入,结果比较少的时候,拆分原子,比对原子,找出搜索最频繁的那个。
原子可以是在内存中建立索引,可以做到O(1)时间内查找。
[解决办法]
相似推荐问题。
根据词库中词来判断输入的相似度,也可以使用数据挖掘通过用户行为进行相似度的推测。
具体的做法有判断同音啊(pin4j将词库转拼音,原来百度貌似是这么来的)、判断有多少个字一样啊、中间间隔一两个字啊什么之类的。
做法很多。做高级了也很难。