valreductiontwo.h

来自「某个实验事编写粗糙集智能信息处理的程序」· C头文件 代码 · 共 42 行

H
42
字号
// ValReductionTwo.h: interface for the ValReductionTwo class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_VALREDUCTIONTWO_H__29AEEDE1_D535_11D4_BEE4_0050FC0BE958__INCLUDED_)
#define AFX_VALREDUCTIONTWO_H__29AEEDE1_D535_11D4_BEE4_0050FC0BE958__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include<fstream.h>
#include"ValBase.h"

class ValReductionTwo  :ValBase
{
private:
	  void Save_Files(char *r);
	  int ** info;      //经过属性约简后的信息表
      int rule_num;     //规则的数目
	  bool del_line( ); //删去原决策表中无效的属性
	  int ** generate_rule();                       //得到规则
      bool find_overlap(int ** tab,int number,int* &same_rec);     //查找重复记录
      int find_conflict(int * att,int * val);        //检查除去一个属性后的信息表是否存在冲突
      void trans_flag(int ** &tab,bool &flag);   //将"?"处理(算法第二步)结果中如含有'*'则flag为true,否则为false
	  int find_conflict(int * att,int * val,const int num);   //检查除"?"和"*"以外的属性值是否产生冲突
	  int check_conflict(int ** tab);  //返回条件属性全被标为"*"的记录个数  (原注:检查是否有错误的规则???)
      int * del_superflous(int ** tab1);              //删除多余的规则	  
// Construction
	int* pDelTable;
	int rec_num;      //记录数
	int con_num;      //约简后的条件属性数
	int **rule;
public:
	bool  Run(char *s,char *r);
	ValReductionTwo();
	virtual ~ValReductionTwo();

};

#endif // !defined(AFX_VALREDUCTIONTWO_H__29AEEDE1_D535_11D4_BEE4_0050FC0BE958__INCLUDED_)

⌨️ 快捷键说明

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