globe3.h
来自「某个实验事编写粗糙集智能信息处理的程序」· C头文件 代码 · 共 54 行
H
54 行
//globe.h
#if !defined (GLOBE_H_)
#define GLOBE_H_
#include "SetClass.h"
///////////////////////////////////////////////////////////////////////////////////////////////////
namespace globe3
{
bool SimRelation(float** pIS,char ***ISTable,Set& ConAttrSet,int x,int y);//相似关系
void SimClass(Set& SClass,float** pIS,char ***ISTable,int RecNum , Set& ConAttrSet,int m);//相似等价类
bool ReadRecConNum(char* FileName,int* pNum);////读入文件头前4行读入条件属性和记录数目,分别存储在pNum[0]和pNum[1]中
void InputInfSys(char* FileName,float** &pIS,char ***&ISTable,int* &pDecis,char **&ConName,char** &ConType);//读入信息表
bool IntTransFloat(float** pRule,int rule_number, Set& set,
int* dec,int* pCon,int* pClass,char* cut_file_name,char* rule_file_name,int con_attr_num);
//写规则文件,输出结果,将规则中的整数还原为原先的浮点类型
void Save(char* In_File,Set& Rset,char* FileName,float** pResult,int RecNum,int ConAttrNum,int* pDecisR,int* ,int* ,char**,char**);
//void MissValue(char* FileName,char** pIS,int RecNum,int ConAttrNum,float MissRate,int* pDecis);
void EqClassofDecis(Set& EClassD,int* pDecis,int RecNum,int m);//m实例决策的等价类
void EqClassNumofDecis(Set& EClassDNum,int* pDecis,int RecNum);//划分决策的等价类
int CardofPosRegion(float** pIS,char ***ISTable,int* pDecis,int RecNum,Set& ConAttrSet);//返回正域中的元素数目
void FindCoreConAttr(Set& Core_ConAttr,int& Core_num,int* pCMiss,Set& Fre,float** pIS,char ***ISTable,int* pDec,int Rec_Num,Set& Con_Attr_Set);//找到条件属性的核属性
int MissValueNum(Set& Q,int* pCMiss); //统计信息表总的遗失属性数
bool SelConAttrSet(float Criterion,Set& Rset,float** pIS,char ***ISTable,int RecNum,Set& ConAttrSet,int* pDecis);//属性约简
void ComputerPara(float** pRule,int* pRdec,int RuleNum,Set& Rset,float** pIS,char *** ISTable,int* pDec,int RecNum,int* pCov,int* pClass);//计算规则的覆盖度和限制容差类的元素个数
void DecisMatrix(Set* pDMatrix,int n,float** pIS,char ***ISTable,int RecNum,int ConAttrNum,int* pDecis);//构建实例n的广义差异矩阵行
void SetMinSet(Set* pDM, int n, Set& RSet);//设置最小的与或式集合
void GenerateRules(char* In_File,char* FileName,float** pIS,char ***ISTable,int* pDecis,Set& Rset,int RecNum,int ConAttrNum,char**,char**);//导出规则集
/*
bool ReadRecConNum(char* FileName,int* pNum);
void InputInfSys(char* FileName,int** pIS,int* pDecis,char**,char**);
bool IntTransFloat(int** pRule,int rule_number, Set& set,
int* dec,int* pCon,int* pClass,
char* cut_file_name,char* rule_file_name,int con_attr_num);
void Save(char* In_File,Set& Rset,char* FileName,int** pResult,int RecNum,int ConAttrNum,int* pDecisR,int* ,int* ,char**,char**);
//void MissValue(char* FileName,char** pIS,int RecNum,int ConAttrNum,float MissRate,int* pDecis);
void EqClassofDecis(Set& EClassD,int* pDecis,int RecNum,int m);
void EqClassNumofDecis(Set& EClassDNum,int* pDecis,int RecNum);
int CardofPosRegion(int** pIS,int* pDecis,int RecNum,Set& ConAttrSet);
void FindCoreConAttr(Set& Core_ConAttr,Set& Fre,int** pIS,int* pDec,int Rec_Num,Set& Con_Attr_Set);
int MissValueNum(Set& Q,int* pCMiss);
bool SelConAttrSet(float Criterion,Set& Rset,int** pIS,int RecNum,Set& ConAttrSet,int* pDecis);
void ComputerPara(int** pRule,int* pRdec,int RuleNum,Set& Rset,int** pIS,int* pDec,int RecNum,int* pCov,int* pClass);
void DecisMatrix(Set* pDMatrix,int n,int** pIS,int RecNum,int ConAttrNum,int* pDecis);
void SetMinSet(Set* pDM, int n, Set& RSet);
void GenerateRules(char* In_File,char* FileName,int** pIS,int* pDecis,Set& Rset,int RecNum,int ConAttrNum/*added by lie*///,char**,char**);
}
//#define Max3 2000
#endif
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?