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

📄 dfa.h

📁 正则表达式由一些普通字符和一些元字符(metacharacters)组成。普通字符包括大小写的字母和数字
💻 H
字号:
#ifndef DFA_H
#define DFA_H

#include <iostream>
#include <stdlib.h>
#include <conio.h>
#include "CharClass.h"
#include "StatusEdge.h"
#include "Nfa.h"

using namespace std;

typedef StatusBase<DfaStatusNumber, EdgeMatchContent> DfaStatusBase;
typedef DfaStatusBase::EdgeBase DfaEdgeBase;
typedef Status<DfaStatusBase, DfaEdgeBase> DfaStatus;
typedef DfaStatus::Edge DfaEdge;

class Dfa
{
public:
	DfaStatus Start;
	Set<DfaStatusBase*> UnsettledStatus;
	Set<DfaStatusBase*> ExisentStatus;

	Dfa();
	Dfa(Nfa& NfaGraph);
	DfaStatusBase* NfaStatusBaseToDfa(NfaStatusBase* Object);
	void FindCorrespondingNfaStatus(Set<int>& StatusNumber, Nfa& NfaGraph, Link<NfaStatusBase*>& Result);
	DfaStatusBase* IsExisentStatus(Set<int>& StatusNumber, bool Final);//如果状态不存在就加进UnsettledStatus、ExisentStatus
	void GetDfa(Nfa& NfaGraph);
	void Print();
};

#endif

⌨️ 快捷键说明

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