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

📄 hashtree.h

📁 关联规则发现vc源代码
💻 H
字号:
// HashTree.h: interface for the CHashTree class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_HASHTREE_H__65930613_0F74_4631_8520_4D5F779D9F6A__INCLUDED_)
#define AFX_HASHTREE_H__65930613_0F74_4631_8520_4D5F779D9F6A__INCLUDED_

#include "List.h"
#include "itemSet.h"

#define BUCKET_SIZE 100 /* the number of buckets in the hash tree*/
#define TABLE_SIZE 500 /* the number of buckets in the hash tree*/

#define LEAF     1
#define INTERNAL 2

/* node in the hash tree*/
typedef struct hashnode HashNode;
struct hashnode
{
    int nodetype;  /* nodetype L=leaf, N=non-terminal node*/
    
    union {
            List *largeset; /*corresponding to a leaf node*/
            HashNode *tab[TABLE_SIZE]; /*corresponding to a non-tem node, each bucket points to another node*/
    } vp;
};


class CHashTree {

public:

    HashNode *root;
    
    CHashTree();
    ~CHashTree();
    
    int hash(itemSet *itemset, int level);
    
    HashNode * newnode(int nodetype);
    void freenode(HashNode *node);

    void insert(HashNode **hp, itemSet *s, int level );
    void subset(HashNode *head, itemSet *t, int m);

    void scan(HashNode *head, List *result, long minsup);
    
};

#endif // !defined(AFX_HASHTREE_H__65930613_0F74_4631_8520_4D5F779D9F6A__INCLUDED_)

⌨️ 快捷键说明

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