zwfc.h
来自「中文分词算法,效率很高,使用词典树装搜索进行单词切割,并提供扩充词库的函数!」· C头文件 代码 · 共 57 行
H
57 行
//---------------------------------------------------------------------------
#ifndef ZWFCH
#define ZWFCH
#include<iostream>
#include<fstream>
#include<vector>
#include<string>
#include<stack>
using namespace std;
//---------------------------------------------------------------------------
const int s1 = 0XB0,s2 = 0XA1,e1 = 0XF8,e2 = 0XFF;
const int maxwordlen = 50;
//---------------------------------------------------------------------------
struct Second
{
string key;
Second *next;
Second(string k = "",Second *n = 0):key(k),next(n){}
};
//---------------------------------------------------------------------------
struct Head
{
int size;
string key;
vector<Second*> W;
Head(string k = "",int s = 0):key(k),size(s){}
};
//---------------------------------------------------------------------------
class Dictiory
{
vector<Head> H;
ifstream fin;
ifstream fcin;
ofstream fout;
int hash[e1 - s1][e2 - s2];
int BinarySearch(string str,int k);
int GetNum();
void LoadDic();
bool IsC(char c);
bool IsEc(char c);
void AddWord(string str,int k);
void InsertWord(string str,int k);
bool IsWord(string str,int k,int t);
void SkipNotChinese(string &str,stack<string> &stk);
public:
string Sfilename;
string Dfilename;
Dictiory();
Dictiory(string sfilename,string dfilename);
void SegmentWord(string s);
void PrintDic();
};
//---------------------------------------------------------------------------
#endif
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?