思路:
一个简单的笨办法是编写指针查询:
union wordid{
unsigned short id;
wchar_t word;
char ch[2];};
struct words{
union wordid w;
unsigned short n;
struct words *lower,*upper;};
然后按二叉树的方法即可简单实现。
如果不考虑空间浪费,也可更简单算法:直接申请一段连续的数组空间:
const MaxNum = 256*256;
unsigned short *times = (unsigned short*)malloc(MaxNum*sizeof(unsigned short));//或简单的:times[MaxNum]={0};
然后按照Unicode方法一字一字读即可,以每个字的编码作为数组的下标进行计算
python的jieba库、分词库都是可以用的呀