protected static class MultiStrFinder.Node extends Object
Modifier and Type | Field and Description |
---|---|
MultiStrFinder.Node[] |
directRouter
直接路由表
减少挑 fail过程 使用数组 + charIndex 希望库减少 hash复杂度和内存空间
当初始化 stringSet 数量较大时 字符较多可以一定程度上减少 hashMap 底层实现带来的 内存开销
directRouter 大小为 全部字符数量
|
MultiStrFinder.Node |
fail |
List<MultiStrFinder.Node> |
failPre |
boolean |
isEnd |
int |
nodeIndex |
String |
tagetString |
char |
value |
Constructor and Description |
---|
Node() |
Modifier and Type | Method and Description |
---|---|
boolean |
addValue(char c,
int nodeIndex,
Map<Character,Integer> charIndex)
新增子节点
|
static MultiStrFinder.Node |
createRoot(int allCharSize)
构建根节点
|
MultiStrFinder.Node |
getNext(char c,
Map<Character,Integer> charIndex)
获取下一跳
|
void |
setEnd(String string)
标记当前节点为 字符串尾节点
|
String |
toString() |
public boolean isEnd
public String tagetString
public MultiStrFinder.Node fail
public MultiStrFinder.Node[] directRouter
public int nodeIndex
public char value
public List<MultiStrFinder.Node> failPre
public boolean addValue(char c, int nodeIndex, Map<Character,Integer> charIndex)
c
- 字符nodeIndex
- 节点编号charIndex
- 字符索引public void setEnd(String string)
string
- 字符串public MultiStrFinder.Node getNext(char c, Map<Character,Integer> charIndex)
c
- 字符charIndex
- 字符索引public static MultiStrFinder.Node createRoot(int allCharSize)
allCharSize
- 全部字符数量Copyright © 2025. All rights reserved.