performance: use tree data structure and StringBuilder to accelerate long text analysing speed

```
not optimised: 

time elapsed:5494, rate:1189.507872kb/s, sentences:440480.52/s
time elapsed:177728, rate:24.538243kb/s, sentences:8375.72/s

optimised:

time elapsed:5595, rate:1168.035076kb/s, sentences:432529.04/s
time elapsed:4100, rate:1063.690930kb/s, sentences:363073.19/s
```

上面结果分别是优化前和优化后短长文本分析速度，可以看出，这个改动对短文本影响不大，对长文本效果明显