⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 graph.h

📁 多种字符串匹配算法 多种字符串匹配算法
💻 H
字号:
// Graph.h: interface for the Graph class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(_GRAPH_H__)
#define _GRAPH_H__

struct _cell{
	int element; 
	struct _cell *next;
};

typedef struct _cell *List;

class Graph  
{
public:
	Graph();
	Graph(int v, int e);
	virtual ~Graph();

	static Graph* newGraph(int v, int e); 
	static Graph* newAutomaton(int v, int e); 
	static Graph* newSuffixAutomaton(int v, int e); 

	int newVertex(); 
	int getInitial(); 
	bool isTerminal(int v); 
	void setTerminal(int v); 
	int getTarget(int v, unsigned char c); 
	void setTarget(int v, unsigned char c, int t); 
	int getSuffixLink(int v); 
	void setSuffixLink(int v, int s); 
	int getLength(int v); 
	void setLength(int v, int ell); 
	int getPosition(int v); 
	void setPosition(int v, int p); 
	int getShift(int v, unsigned char c); 
	void setShift(int v, unsigned char c, int s); 
	void copyVertex(int target, int source);

private:
	int vertexNumber;
	int edgeNumber;
	int vertexCounter;
	int initial;
	int *terminal;
	int *target;
	int *suffixLink;
	int *length;
	int *position;
	int *shift; 
};

#endif // !defined(_GRAPH_H__)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -