mirror of
https://github.com/yanyiwu/cppjieba.git
synced 2025-07-18 00:00:12 +08:00
fix hmmsegment's output bug
This commit is contained in:
parent
e3d840bb03
commit
ef0739b0dc
@ -55,9 +55,9 @@ make;
|
|||||||
Output:
|
Output:
|
||||||
```
|
```
|
||||||
我来到北京清华大学
|
我来到北京清华大学
|
||||||
我来/到/到北京/清华大学
|
我来/到/北京/清华大学
|
||||||
他来到了网易杭研大厦
|
他来到了网易杭研大厦
|
||||||
他来/到/了/到了网易/杭/杭研大厦
|
他来/到/了/网易/杭/研大厦
|
||||||
小明硕士毕业于中国科学院计算所,后在日本京都大学深造
|
小明硕士毕业于中国科学院计算所,后在日本京都大学深造
|
||||||
小明/硕士/毕业于/中国/科学院/计算所/,/后/在/日/本/京/都/大/学/深/造
|
小明/硕士/毕业于/中国/科学院/计算所/,/后/在/日/本/京/都/大/学/深/造
|
||||||
```
|
```
|
||||||
|
@ -125,24 +125,19 @@ namespace CppJieba
|
|||||||
LogError("viterbi failed.");
|
LogError("viterbi failed.");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
//cout<<vecToString(status)<<endl;
|
||||||
begin = unico.begin();
|
begin = unico.begin();
|
||||||
left = begin;
|
left = begin;
|
||||||
res.clear();
|
res.clear();
|
||||||
for(uint i =0; i< status.size(); i++)
|
for(uint i =0; i< status.size(); i++)
|
||||||
{
|
{
|
||||||
switch(status[i])
|
if(status[i] % 2) //if(E == status[i] || S == status[i])
|
||||||
{
|
{
|
||||||
case E:
|
right = begin + i + 1;
|
||||||
right = begin + i + 1;
|
res.push_back(TransCode::vecToStr(left, right));
|
||||||
res.push_back(TransCode::vecToStr(left, right));
|
left = right;
|
||||||
left = right;
|
|
||||||
break;
|
|
||||||
case S:
|
|
||||||
res.push_back(TransCode::vecToStr(begin + i, begin + i +1));
|
|
||||||
|
|
||||||
break;
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user