亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? hooks.c

?? 這是vc開發的數據挖掘算法中的決策樹算法之see5算法源代碼.
?? C
?? 第 1 頁 / 共 5 頁
字號:
		"class",		"cut",		"conds",		"elts",		"entries",		"forks",		"freq",		"id",		"type",		"low",		"mid",		"high",		"result",		"rules",		"val",		"lift",		"cover",		"ok",		"default",		"costs",		"sample",		"init"	       };char	PropName[20],	*PropVal=Nil,	*Unquoted;int	PropValSize=0;#define	PROPS 23#define	ERRORP		0#define ATTP		1#define CLASSP		2#define CUTP		3#define	CONDSP		4#define ELTSP		5#define ENTRIESP	6#define FORKSP		7#define FREQP		8#define IDP		9#define TYPEP		10#define LOWP		11#define MIDP		12#define HIGHP		13#define RESULTP		14#define RULESP		15#define VALP		16#define LIFTP		17#define COVERP		18#define OKP		19#define DEFAULTP	20#define COSTSP		21/*************************************************************************//*									 *//*	Read header information and decide whether model files are	 *//*	in ASCII or binary format					 *//*									 *//*************************************************************************/void ReadFilePrefix(String Extension)/*   --------------  */{#if defined WIN32 || defined _CONSOLE    if ( ! (TRf = GetFile(Extension, "rb")) ) Error(NOFILE, Fn, "");#else    if ( ! (TRf = GetFile(Extension, "r")) ) Error(NOFILE, Fn, "");#endif    StreamIn((char *) &TRIALS, sizeof(int));    if ( memcmp((char *) &TRIALS, "id=", 3) != 0 )    {	BINARY = true;	BinRecoverDiscreteNames();    }    else    {	BINARY = false;	rewind(TRf);	ReadHeader();    }}/*************************************************************************//*								  	 *//*	Read the header information (id, saved names, models)		 *//*								  	 *//*************************************************************************/void ReadHeader()/*   ---------  */{    Attribute	Att;    DiscrValue	v;    char	*p, Dummy;    int		Year, Month, Day;    FILE	*F;    while ( true )    {	switch ( ReadProp(&Dummy) )	{	    case ERRORP:		return;	    case IDP:		/*  Recover year run and set base date for timestamps  */		if ( sscanf(PropVal + strlen(PropVal) - 11,			    "%d-%d-%d\"", &Year, &Month, &Day) == 3 )		{		    SetTSBase(Year);		}		break;	    case COSTSP:		/*  Recover costs file used to generate model  */		if ( (F = GetFile(".costs", "r")) )		{		    GetMCosts(F);		}		break;	    case ATTP:		Unquoted = RemoveQuotes(PropVal);		Att = Which(Unquoted, AttName, 1, MaxAtt);		if ( ! Att || Exclude(Att) )		{		    Error(MODELFILE, E_MFATT, Unquoted);		}		break;	    case ELTSP:		MaxAttVal[Att] = 1;		AttValName[Att][1] = strdup("N/A");		for ( p = PropVal ; *p ; )		{		    p = RemoveQuotes(p);		    v = ++MaxAttVal[Att];		    AttValName[Att][v] = strdup(p);		    for ( p += strlen(p) ; *p != '"' ; p++ )			;		    p++;		    if ( *p == ',' ) p++;		}		AttValName[Att][MaxAttVal[Att]+1] = "<other>";		break;	    case ENTRIESP:		sscanf(PropVal, "\"%d\"", &TRIALS);		Entry = 0;		return;	}    }}/*************************************************************************//*									 *//*	Retrieve decision tree with extension Extension			 *//*									 *//*************************************************************************/Tree GetTree(String Extension)/*   -------  */{    CheckFile(Extension, false);    return ( BINARY ? BinInTree() : InTree() );}Tree InTree()/*   ------  */{    Tree	T;    DiscrValue	v, Subset=0;    char	Delim, *p;    ClassNo	c;    int		X;    double	XD;    T = (Tree) AllocZero(1, TreeRec);    do    {	switch ( ReadProp(&Delim) )	{	    case ERRORP:		return Nil;	    case TYPEP:		sscanf(PropVal, "\"%d\"", &X); T->NodeType = X;		break;	    case CLASSP:		Unquoted = RemoveQuotes(PropVal);		T->Leaf = Which(Unquoted, ClassName, 1, MaxClass);		if ( ! T->Leaf ) Error(MODELFILE, E_MFCLASS, Unquoted);		break;	    case ATTP:		Unquoted = RemoveQuotes(PropVal);		T->Tested = Which(Unquoted, AttName, 1, MaxAtt);		if ( ! T->Tested || Exclude(T->Tested) )		{		    Error(MODELFILE, E_MFATT, Unquoted);		}		break;	    case CUTP:		sscanf(PropVal, "\"%lf\"", &XD);	T->Cut = XD;		T->Lower = T->Mid = T->Upper = T->Cut;		break;	    case LOWP:		sscanf(PropVal, "\"%lf\"", &XD);	T->Lower = XD;		break;	    case MIDP:		sscanf(PropVal, "\"%lf\"", &XD);	T->Mid = XD;		break;	    case HIGHP:		sscanf(PropVal, "\"%lf\"", &XD);	T->Upper = XD;		break;	    case FORKSP:		sscanf(PropVal, "\"%d\"", &T->Forks);		break;	    case FREQP:		T->ClassDist = Alloc(MaxClass+1, ItemCount);		p = PropVal+1;		ForEach(c, 1, MaxClass)		{		    T->ClassDist[c] = strtod(p, &p);		    T->Items += T->ClassDist[c];		    p++;		}		break;	    case ELTSP:		if ( ! Subset++ )		{		    T->Subset = AllocZero(T->Forks+1, Set);		}		T->Subset[Subset] = MakeSubset(T->Tested);		break;	}    }    while ( Delim == ' ' );    if ( T->ClassDist )    {	T->Errors = T->Items - T->ClassDist[T->Leaf];    }    else    {	T->ClassDist = Alloc(1, ItemCount);    }    if ( T->NodeType )    {	T->Branch = AllocZero(T->Forks+1, Tree);	ForEach(v, 1, T->Forks)	{	    T->Branch[v] = InTree();	}    }    return T;}/*************************************************************************//*									 *//*	Retrieve ruleset with extension Extension			 *//*	(Separate functions for ruleset, single rule, single condition)	 *//*									 *//*************************************************************************/CRuleSet GetRules(String Extension)/*	 --------  */{    CheckFile(Extension, false);    return ( BINARY ? BinInRules() : InRules() );}CRuleSet InRules()/*	 -------  */{    CRuleSet	RS;    RuleNo	r;    char	Delim;    RS = Alloc(1, RuleSetRec);    do    {	switch ( ReadProp(&Delim) )	{	    case ERRORP:		return Nil;	    case RULESP:		sscanf(PropVal, "\"%d\"", &RS->SNRules);		CheckActiveSpace(RS->SNRules);		break;	    case DEFAULTP:		Unquoted = RemoveQuotes(PropVal);		RS->SDefault = Which(Unquoted, ClassName, 1, MaxClass);		if ( ! RS->SDefault ) Error(MODELFILE, E_MFCLASS, Unquoted);		break;	}    }    while ( Delim == ' ' );    /*  Read each rule  */    RS->SRule = Alloc(RS->SNRules+1, CRule);    ForEach(r, 1, RS->SNRules)    {	if ( (RS->SRule[r] = InRule()) )	{	    RS->SRule[r]->RNo = r;	    RS->SRule[r]->TNo = Entry;	}    }    ConstructRuleTree(RS);    Entry++;    return RS;}CRule InRule()/*    ------  */{    CRule	R;    int		d;    char	Delim;    float	Lift;    R = Alloc(1, RuleRec);    do    {	switch ( ReadProp(&Delim) )	{	    case ERRORP:		return Nil;	    case CONDSP:		sscanf(PropVal, "\"%d\"", &R->Size);		break;	    case COVERP:		sscanf(PropVal, "\"%f\"", &R->Cover);		break;	    case OKP:		sscanf(PropVal, "\"%f\"", &R->Correct);		break;	    case LIFTP:		sscanf(PropVal, "\"%f\"", &Lift);		R->Prior = (R->Correct + 1) / ((R->Cover + 2) * Lift);		break;	    case CLASSP:		Unquoted = RemoveQuotes(PropVal);		R->Rhs = Which(Unquoted, ClassName, 1, MaxClass);		if ( ! R->Rhs ) Error(MODELFILE, E_MFCLASS, Unquoted);		break;	}    }    while ( Delim == ' ' );    R->Lhs = Alloc(R->Size+1, Condition);    ForEach(d, 1, R->Size)    {	R->Lhs[d] = InCondition();    }    R->Vote = 1000 * (R->Correct + 1.0) / (R->Cover + 2.0) + 0.5;    return R;}Condition InCondition()/*        -----------  */{    Condition	C;    char	Delim;    int		X;    double	XD;    C = Alloc(1, CondRec);    do    {	switch ( ReadProp(&Delim) )	{	    case ERRORP:		return Nil;	    case TYPEP:		sscanf(PropVal, "\"%d\"", &X); C->NodeType = X;		break;	    case ATTP:		Unquoted = RemoveQuotes(PropVal);		C->Tested = Which(Unquoted, AttName, 1, MaxAtt);		if ( ! C->Tested || Exclude(C->Tested) )		{		    Error(MODELFILE, E_MFATT, Unquoted);		}		break;	    case CUTP:		sscanf(PropVal, "\"%lf\"", &XD);	C->Cut = XD;		break;	    case RESULTP:		C->TestValue = ( PropVal[1] == '<' ? 2 : 3 );		break;	    case VALP:		if ( Continuous(C->Tested) )		{		    C->TestValue = 1;		}		else		{		    Unquoted = RemoveQuotes(PropVal);		    C->TestValue = Which(Unquoted,					 AttValName[C->Tested],					 1, MaxAttVal[C->Tested]);		    if ( ! C->TestValue ) Error(MODELFILE, E_MFATTVAL, Unquoted);		}		break;	    case ELTSP:		C->Subset = MakeSubset(C->Tested);		C->TestValue = 1;		break;	}    }    while ( Delim == ' ' );    return C;}Condition	*Test=Nil;int		NTest,		TestSpace,		*TestOccur=Nil,		*RuleCondOK=Nil;Boolean		*TestUsed=Nil;void ConstructRuleTree(CRuleSet RS)/*   -----------------  */{    int		r, c;    RuleNo	*All;    Test = Alloc((TestSpace = 1000), Condition);    NTest = 0;    All = Alloc(RS->SNRules, RuleNo);    ForEach(r, 1, RS->SNRules)    {	All[r-1] = r;	ForEach(c, 1, RS->SRule[r]->Size)	{	    SetTestIndex(RS->SRule[r]->Lhs[c]);	}    }    TestOccur = Alloc(NTest, int);    TestUsed  = AllocZero(NTest, Boolean);    RuleCondOK = AllocZero(RS->SNRules+1, int);    RS->RT = GrowRT(All, RS->SNRules, RS->SRule);    Free(All);    Free(Test);    Free(TestUsed);    Free(TestOccur);    Free(RuleCondOK);}void SetTestIndex(Condition C)/*   ------------  */{    int		t;    Condition	CC;    Attribute	Att;    Att = C->Tested;    ForEach(t, 0, NTest-1)    {	CC = Test[t];	if ( CC->Tested != Att || CC->NodeType != C->NodeType ) continue;	switch ( C->NodeType )	{	    case BrDiscr:		C->TestI = t;		return;	    case BrSubset:		if ( ! memcmp(C->Subset, CC->Subset, (MaxAttVal[Att]>>3)+1) )		{		    C->TestI = t;		    return;		}		break;	    case BrThresh:		if ( C->TestValue == 1 && CC->TestValue == 1 ||		     ( C->TestValue != 1 && CC->TestValue != 1 &&		       C->Cut == CC->Cut ) )		{		    C->TestI = t;		    return;		}		break;	}    }    /*  New test -- make sure have enough space  */    if ( NTest >= TestSpace )    {	Realloc(Test, (TestSpace += 1000), Condition);    }    Test[NTest] = C;    C->TestI = NTest++;}RuleTree GrowRT(RuleNo *RR, int RRN, CRule *Rule)/*       ------  */{    RuleTree	Node;    RuleNo	r, *LR;    int		FP=0, ri, TI, *Expect, LRN;    DiscrValue	v;    if ( ! RRN ) return Nil;    Node = AllocZero(1, RuleTreeRec);    /*  Record and swap to front any rules that are satisfied  */    ForEach(ri, 0, RRN-1)    {	r = RR[ri];	if ( RuleCondOK[r] == Rule[r]->Size )	{	    RR[ri] = RR[FP];	    RR[FP] = r;	    FP++;	}    }    if ( FP )    {	Node->Fire = Alloc(FP+1, RuleNo);	memcpy(Node->Fire, RR, FP * sizeof(RuleNo));	Node->Fire[FP] = 0;	RR  += FP;	RRN -= FP;    }    else    {	Node->Fire = Nil;    }    if ( ! RRN ) return Node;    /*  Choose test for this node  */    TI = SelectTest(RR, RRN, Rule);    TestUsed[TI] = true;    Node->CondTest = Test[TI];    /*  Find the desired outcome for each rule  */    Expect = Alloc(RRN, int);    ForEach(ri, 0, RRN-1)    {	Expect[ri] = DesiredOutcome(Rule[RR[ri]], TI);    }    /*  Now construct individual branches.  Rules that do not reference	the selected test go down branch 0; at classification time,	any case with an unknown outcome for the selected test also	goes to branch 0.  */    Node->Forks =	( Test[TI]->NodeType == BrDiscr ? MaxAttVal[Test[TI]->Tested] :	  Test[TI]->NodeType == BrSubset ? 1 : 3 );    Node->Branch = Alloc(Node->Forks+1, RuleTree);    LR = Alloc(RRN, RuleNo);    ForEach(v, 0, Node->Forks)    {	/*  Extract rules with outcome v and increment conditions satisfied,	    if relevant  */	LRN = 0;	ForEach(ri, 0, RRN-1)	{	    if ( Expect[ri] == v )	    {		LR[LRN++] = RR[ri];		if ( v ) RuleCondOK[RR[ri]]++;	    }

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲精品老司机| 国产成人av电影在线| 国产馆精品极品| 欧美综合色免费| 亚洲欧洲制服丝袜| 免费在线看一区| 欧美日韩免费电影| 亚洲免费在线看| 成人一区在线看| 久久在线观看免费| 日本最新不卡在线| 欧美日韩精品福利| 亚洲久本草在线中文字幕| 国产精品99久久久久久宅男| 91精品国产综合久久精品app | 亚洲已满18点击进入久久| 国产一区 二区| 日韩精品一区二区在线| 五月天亚洲精品| 欧美在线免费播放| 亚洲一区中文日韩| 在线看日韩精品电影| 亚洲天堂免费在线观看视频| 成人av动漫网站| 亚洲国产精品激情在线观看| 国产高清成人在线| 亚洲精品一区二区三区香蕉| 奇米色777欧美一区二区| 欧美一区二视频| 日韩成人dvd| 精品蜜桃在线看| 国产一区在线观看麻豆| 精品国产伦一区二区三区观看方式| 日韩综合小视频| 91精品国产91久久综合桃花| 天堂影院一区二区| 日韩女优av电影| 韩国精品主播一区二区在线观看| 欧美电影在哪看比较好| 麻豆精品精品国产自在97香蕉| 欧美一区二区精品在线| 美国三级日本三级久久99| 欧美tk—视频vk| 国产一区二区网址| 国产欧美日韩在线| 一本久道中文字幕精品亚洲嫩| 一区二区三区欧美亚洲| 欧美精品vⅰdeose4hd| 蜜臀久久久99精品久久久久久| 日韩欧美一级二级| 国产成人精品一区二区三区网站观看| 中文字幕国产精品一区二区| 在线一区二区三区做爰视频网站| 亚瑟在线精品视频| 精品卡一卡二卡三卡四在线| 国产成人日日夜夜| 亚洲永久精品大片| 精品久久久久久久久久久久久久久 | 免费观看日韩av| 久久婷婷一区二区三区| 91色porny蝌蚪| 日韩精品国产欧美| 中文av一区二区| 欧美一区二区三区人| 国产高清精品网站| 亚洲国产日韩a在线播放性色| 欧美一区二视频| 成人免费毛片高清视频| 日韩国产精品91| 国产精品久久久久影院色老大| 欧美日韩高清一区二区三区| 高清不卡一区二区| 日韩成人午夜精品| 亚洲免费观看高清完整版在线观看 | 欧美色图第一页| 国产精品一区二区91| 亚洲午夜久久久久久久久电影网 | 在线成人av网站| 丁香婷婷综合色啪| 日韩高清在线观看| 亚洲视频每日更新| 久久美女艺术照精彩视频福利播放| 色老汉av一区二区三区| 国产伦精品一区二区三区视频青涩| 一区二区免费在线| 国产精品热久久久久夜色精品三区| 欧美人与性动xxxx| 99久久久久久| 国产一区二区精品久久91| 午夜精品成人在线| 一区二区三区免费在线观看| 欧美国产在线观看| 久久影音资源网| 日韩欧美视频一区| 欧美三级资源在线| 欧洲亚洲国产日韩| 91麻豆.com| 91色porny在线视频| 成人激情图片网| 国产乱码精品一区二区三区忘忧草 | 蜜桃视频在线观看一区二区| 亚洲午夜羞羞片| 亚洲一区在线电影| 一区二区三区视频在线看| 综合激情成人伊人| 国产精品久久久久影视| 国产精品欧美精品| 国产精品久久久久久久久搜平片| 国产午夜精品美女毛片视频| 久久久一区二区三区捆绑**| 久久女同性恋中文字幕| 国产三级精品在线| 国产欧美一区二区三区在线看蜜臀| 精品av综合导航| 国产亚洲一二三区| 中文字幕乱码久久午夜不卡| 国产精品久久久久久久久久免费看| 久久久久久一二三区| 久久久久国产精品麻豆| 久久精品人人爽人人爽| 国产精品色哟哟| 一区二区三区资源| 午夜在线成人av| 欧美96一区二区免费视频| 麻豆国产欧美一区二区三区| 久久国产尿小便嘘嘘| 国产剧情av麻豆香蕉精品| 国产69精品久久99不卡| 91在线你懂得| 欧美日韩一区二区在线视频| 5月丁香婷婷综合| 26uuu国产电影一区二区| 国产无一区二区| 亚洲黄网站在线观看| 日本三级亚洲精品| 国产一区二区三区蝌蚪| av在线不卡免费看| 欧美三级中文字| 久久精品亚洲一区二区三区浴池| 中文字幕一区二区三区四区| 亚洲国产精品久久久久秋霞影院| 日韩av二区在线播放| 国产高清成人在线| 欧美日韩一区二区不卡| 精品福利一区二区三区| 1024亚洲合集| 蜜桃免费网站一区二区三区| 成人午夜精品在线| 欧美人牲a欧美精品| 国产女主播在线一区二区| 亚洲一区二区三区四区在线观看 | 国内成人精品2018免费看| 波波电影院一区二区三区| 欧美日韩免费一区二区三区| 久久综合精品国产一区二区三区| 中文字幕一区二区不卡| 日韩精品一区第一页| 成人爽a毛片一区二区免费| 91麻豆精品久久久久蜜臀| 国产日产欧美一区二区视频| 午夜久久电影网| 不卡电影一区二区三区| 3atv一区二区三区| 亚洲视频狠狠干| 国产综合色精品一区二区三区| 欧洲亚洲精品在线| 国产精品色婷婷| 精品一区二区免费视频| 欧美四级电影网| 亚洲色欲色欲www| 国产v综合v亚洲欧| 欧美一二三区精品| 一区二区三区色| 成人黄色小视频| 久久久精品2019中文字幕之3| 天天综合色天天| 欧美唯美清纯偷拍| 亚洲欧洲中文日韩久久av乱码| 国产在线播放一区| 日韩欧美国产小视频| 亚洲成av人片一区二区| 在线免费视频一区二区| 国产精品免费视频一区| 国产一区二区三区av电影 | 狠狠色狠狠色综合| 91麻豆精品国产91久久久使用方法 | 色婷婷狠狠综合| 亚洲精品你懂的| 色婷婷综合久久久久中文一区二区 | 色妞www精品视频| 亚洲欧美日韩系列| 成人av电影免费在线播放| 久久精品欧美一区二区三区不卡| 久久国产精品99久久久久久老狼| 欧美日高清视频| 天天av天天翘天天综合网| 欧美三级电影在线看| 午夜视频在线观看一区二区| 欧美色区777第一页| 亚洲福利视频导航|