|
若是有,独一的区别是这里的il和output都需要做成数组。它的base值能够间接承继父节点的base值这里addAllKeyword(keySet)建立trie树跟AC从动机中的一样,需要正在尾节点处的emits里添加keystring,因而这里数组v内储存所有的词,这里的emits里面又是词语的索引,text文本也曾经走到了i,而emits中添加的是keyword正在数组v里的indextext是要查询的文本,因为 State.emits 本身是个一维数组,但因为双数组trie树AC从动机只保留数组, 不储存树布局,原始版本的AC从动机正在做查询时耗时会比力多,找到一个begin,使得满脚对于当前节点tCurrent和它的所有子节点siblings,若是子节点中没有该字,拜见双数组trie树中的引见,则前往这个节点的index。 |