敏感词系统
前提:
敏感词库
主要功能:
昵称含有敏感词,直接拒绝
评论或者聊天中含有的敏感词,替换为*
可以动态的更新敏感词库
字符串匹配
相关概念:
主串(长度为n)
模式串(长度为m)
单模式匹配
BF算法(暴力匹配算法、朴素匹配算法)
在主串中,从起始位置0开始,一直到n-m为止,看看是否有和模式串匹配的子串
最坏的时间复杂度是O(n*m)
RK算法(优化了子串与模式串的比较)
把主串中的子串求哈希值和模式串的哈希值比较
BM算法(通过找规律,可以让字符一次性多移动几位)
坏字符
好后缀
KMP算法(通过找规律,可以让字符一次性多移动几位)
坏字符
好前缀
多模式匹配
Trie树
AC自动机
JDK中String#indexOf