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

📄 table.h

📁 某个实验事编写粗糙集智能信息处理的程序
💻 H
字号:
/*-------------------------------------------------------------

	filename :table.h
	属性约简公共父类CTable头文件
	作者:Kylin li
	2000/12

	2001.11.10 修改
		1. 修改m_fRecord => m_Record
		2. 修改3个主要成员函数的可见性,把InitTable(),recudt(),
		   WriteFile() 由public改为 virtual protected
		3. 增加函数virtual Perform(),调用上述三个函数,简化使用
		   (hide sequential dependencies :-). ) 
		 

--------------------------------------------------------------*/
#if !defined(AFX_TABLE_H__A454EF57_BFE6_11D4_BFEA_0040054EF889__INCLUDED_)
#define AFX_TABLE_H__A454EF57_BFE6_11D4_BFEA_0040054EF889__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// Table.h : header file

#define STR_MAXLEN 20


/////////////////////////////////////////////////////////////////////////////
struct cuts
{
	int col;		//column NO.
	int n;			//cuts number
	char **data;	//
	int *m;			//target value
	
	cuts(int col1,int n1):col(col1),n(n1)
	{
		data=new char*[n];
		m=new int[n];
	}
	~cuts()
	{
		if(data)
		{
			for(int i=0;i<n;i++)
				if(data[i])	delete []data[i];
			delete []data;
		}
		if(m) delete []m;
	}
};

class CTable : public CObject//一般属性约简算法
{
public:
	CTable();   // protected constructor used by dynamic creation        
	virtual bool Perform(const char* filein,const char* fileout);
	virtual ~CTable();	
protected:
	virtual bool InitTable(CString txtname);//初始化
	virtual bool WriteFile(CString name);	//保存结果
	virtual bool reduct()=0;				//约简

	void deleteDup();						//删除重复记录
	int GetCount();							//获得记录数
	int GetConAttrNum();					//获得条件属性个数
	bool StrToInt(int col);

protected :					//data members
	char ***m_strValue;		//字符串值
	int **m_Record;			//记录表
	int m_nCount;			//信息表中的记录数
	int m_nConAttrNum;		//条件属性个数
	char **m_AttrName;		//attributes names
	char **m_AttrType;		//属性类型
	char m_strStyle[10];	//数据集的Style
	int  m_nStage;			//Stage
	cuts** m_Cuts;			//断点集
	bool *m_bAttr;			//属性是否被约简
	bool *m_bObj;			//记录是否被删掉
	bool m_bHaveStr;
	bool *m_bStr;			//记录该列是否为字符型
	bool m_bHaveCuts;
	
	bool CompObj(int i,int j);		//compare object i and j

};

/////////////////////////////////////////////////////////////////////////////


#endif // !defined(AFX_TABLE_H__A454EF57_BFE6_11D4_BFEA_0040054EF889__INCLUDED_)

⌨️ 快捷键说明

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