各位大虾,小弟前几天看一个中文分词代码,对字典树的构建不懂。
若词典中有词“中国”“中华”“国家”“中华人民共和国”等几个词。
构建的树是什么样的啊 ?
还请各位大虾不吝赐教。
(详细一点好啊)
string word = reader.ReadLine();
while (word != null && word.Trim() != "")
{
Hashtable t_chartable = chartable; for (int i = 0; i < word.Length; i++)
{
char_s = word.Substring(i, 1);
if (!t_chartable.Contains(char_s))
{
t_chartable.Add(char_s, new Hashtable());
} t_chartable = (Hashtable)t_chartable[char_s]; }
Hashtable h1 = new Hashtable();
Hashtable h2 = new Hashtable();
h1 = h2;
word = reader.ReadLine();
}
reader.Close();
若词典中有词“中国”“中华”“国家”“中华人民共和国”等几个词。
构建的树是什么样的啊 ?
还请各位大虾不吝赐教。
(详细一点好啊)
string word = reader.ReadLine();
while (word != null && word.Trim() != "")
{
Hashtable t_chartable = chartable; for (int i = 0; i < word.Length; i++)
{
char_s = word.Substring(i, 1);
if (!t_chartable.Contains(char_s))
{
t_chartable.Add(char_s, new Hashtable());
} t_chartable = (Hashtable)t_chartable[char_s]; }
Hashtable h1 = new Hashtable();
Hashtable h2 = new Hashtable();
h1 = h2;
word = reader.ReadLine();
}
reader.Close();
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货