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

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

?? hashtree.cpp

?? 頻繁集挖掘Apriori算法,使用[VC++]實現的
?? CPP
字號:
// HashTree.cpp: implementation of the CHashTree class.
//
//////////////////////////////////////////////////////////////////////
#include "stdafx.h"
#include "HashTree.h"

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

CHashTree::CHashTree()
{

    root = newnode(LEAF);
    return;

}

CHashTree::~CHashTree()
{

    freenode(root);
    root = (HashNode *)NULL;
    return;

}

//  Produces a hash code for a item set.
int CHashTree::hash(itemSet *itemset, int level)
{

    return((int)(itemset->get(level) % TABLE_SIZE));

}


/* creates a new cell accordint to the desired type (t) and fill it with null values*/
HashNode* CHashTree::newnode(int nodetype)
{
    HashNode *node;

    node = (HashNode*) new HashNode();
    node->nodetype = nodetype;
    
    if (nodetype == INTERNAL)
    {
        for (int i = 0; i < TABLE_SIZE; i++)
            node->vp.tab[i] = (HashNode *)NULL;
    }
    else
    {
        node->vp.largeset = (List *)new List();
    }

    return(node);
};



/* free the sub hash tree with the root node */
void CHashTree::freenode(HashNode *node)
{

    if (node->nodetype == INTERNAL)
    {
        for (int i = 0; i < TABLE_SIZE; i++)
        {
            if(node->vp.tab[i] != (HashNode *)NULL)
                freenode(node->vp.tab[i]);
        }
    }
    else
        delete node->vp.largeset;

    delete node;

    return;
}


/*inserts a new itemset - s in the hash tree - cp according to the level lev*/
void CHashTree :: insert( HashNode **hp, itemSet *s, int level )
{
    HashNode *c1;
    HashNode *head = (HashNode *) *hp;
    List *prev;
    itemSet *pset;
    int i;

    s->support(0);

    if (head == (HashNode *)NULL)
    {
        head = newnode(LEAF);
        head->vp.largeset->add(s);
    }
    else if(head->nodetype == INTERNAL)
    {
        c1 = head->vp.tab[hash(s, level)];
        insert(&c1, s, level+1);
    }
    else if( (head->vp.largeset->size() < BUCKET_SIZE) || (level >= (s->size() - 1)) )
    {
        head->vp.largeset->add(s);
    }
    else
    {
        prev = head->vp.largeset;

        for (i = 0; i < TABLE_SIZE; i++)
            head->vp.tab[i] = (HashNode *)newnode(LEAF);

        head->nodetype = INTERNAL;

        for(i = 0; i < prev->size(); i++)
        {
            pset = (itemSet *)prev->get(i);
            c1 = head->vp.tab[hash(pset, level)];
            c1->vp.largeset->add((itemSet *)pset->clone());
        }

        delete prev;

        c1 = head->vp.tab[hash(s, level)];
        c1->vp.largeset->add(s);
    }
    
    return;
}



/* increments the counts of each subset of transaction t which are in the hash tree cp (candidate sets)*/
void CHashTree :: subset(HashNode *head, itemSet *t, int m)
{
    itemSet *node;
    itemSet *visited;
    int i, j;

    if(m >= t->size())
        return;

    if(head != (HashNode *)NULL)
    {
        if (head->nodetype == INTERNAL ) 
        {
            visited = new itemSet();

            for (i = m; i < t->size(); i++)
            {
                j = t->get(i);
                j = j%TABLE_SIZE;
                if(visited->indexOf(j) < 0)
                {
                    visited->add(j);
                    subset(head->vp.tab[j], t, i+1);
                }
            }

            delete visited;
        }
        else
        {
            for(i = 0; i < head->vp.largeset->size(); i++)
            {
                node = (itemSet *)head->vp.largeset->get(i);
        
                if((node->compare(t) == MAKEUP) || (node->compare(t) == TOTALEQUAL))
                    node->support(node->support() + 1);
            }
        }
    }

    return;
}





/* 
   traverses the hash tree - cp, collects the itemsets in a list of itemsets - p1
   and frees the cells of the hash trees********** stands for go and release
*/

void  CHashTree :: scan(HashNode *head, List *result, long minsup) 
{
    itemSet *node;
    int i;
    
    if(head == (HashNode *)NULL)
        return;

    if(head->nodetype == INTERNAL)
    {
        for (i = 0; i < TABLE_SIZE; i++)
            scan(head->vp.tab[i], result, minsup);
    }
    else
    {
        for(i = 0; i < head->vp.largeset->size(); i++)
        {
            node = (itemSet *)head->vp.largeset->get(i);

            if(node->support() >= minsup)
                result->add((itemSet *)node->clone());
        }
    }
    
    return;
}



?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩福利视频网| 久久久国产午夜精品| 国产.欧美.日韩| 久久国产精品72免费观看| 天堂av在线一区| 亚洲电影第三页| 亚洲成a人片在线观看中文| 亚洲尤物视频在线| 亚州成人在线电影| 亚洲第一二三四区| 日本午夜精品一区二区三区电影| 亚洲午夜电影网| 偷窥国产亚洲免费视频| 男女男精品网站| 麻豆精品视频在线观看| 国产一二精品视频| 成人av网址在线观看| 色婷婷国产精品久久包臀| 99精品在线免费| 欧美网站一区二区| 日韩精品在线一区二区| 日本一区二区视频在线| 国产精品视频观看| 亚洲午夜免费电影| 久久丁香综合五月国产三级网站| 国产精品伊人色| 91视视频在线观看入口直接观看www | 国产精品毛片久久久久久久| 中文字幕日韩av资源站| 亚洲国产成人av| 蜜臀av亚洲一区中文字幕| 国产很黄免费观看久久| 99久久久免费精品国产一区二区| 欧美在线看片a免费观看| 日韩色视频在线观看| 国产欧美视频一区二区| 一区二区国产盗摄色噜噜| 日韩精品欧美成人高清一区二区| 国内精品国产成人国产三级粉色 | 精品久久久久香蕉网| 亚洲国产精品ⅴa在线观看| 一区二区三区影院| 国产又粗又猛又爽又黄91精品| 99re成人在线| 日韩欧美的一区二区| 亚洲色欲色欲www| 久久国产婷婷国产香蕉| 色综合久久中文字幕综合网| 欧美一级高清大全免费观看| 亚洲欧洲成人精品av97| 久久av中文字幕片| 精品视频色一区| 国产农村妇女精品| 欧美aaa在线| 欧美性xxxxxxxx| 国产精品灌醉下药二区| 久久av资源网| 欧美老女人第四色| 亚洲激情在线播放| 成人小视频在线观看| 日韩欧美一区二区久久婷婷| 一区二区三国产精华液| 成人黄色在线网站| 国产丝袜欧美中文另类| 久久国产日韩欧美精品| 欧美日韩国产综合草草| 亚洲色图在线看| 高清久久久久久| 久久亚洲精华国产精华液 | 欧美色视频一区| 中文字幕在线视频一区| 国产高清精品网站| xnxx国产精品| 狠狠色丁香婷婷综合久久片| 777久久久精品| 午夜一区二区三区视频| 精品视频一区二区不卡| 亚洲国产欧美在线人成| 精品视频在线免费看| 亚洲午夜精品17c| 欧美在线视频全部完| 一卡二卡三卡日韩欧美| 日本韩国一区二区| 亚洲欧洲色图综合| 91九色最新地址| 亚洲一区二区精品久久av| 欧美艳星brazzers| 亚洲成人自拍偷拍| 欧美一区二区在线看| 日本特黄久久久高潮| 欧美一区二区三区免费观看视频| 日本va欧美va精品| 日韩一区二区精品在线观看| 久久99久国产精品黄毛片色诱| 精品免费国产二区三区| 国内精品嫩模私拍在线| 久久精品视频一区二区| 99久久er热在这里只有精品15 | 欧美三级中文字幕| 麻豆精品一二三| 久久久影视传媒| av中文字幕一区| 亚洲一区二区三区四区的| 欧美日韩美女一区二区| 青娱乐精品在线视频| 日韩女优av电影| 国v精品久久久网| 亚洲一级电影视频| 日韩一卡二卡三卡四卡| 国产一区二区三区在线观看免费 | 国产一区视频导航| 亚洲欧美自拍偷拍色图| 91精品午夜视频| 国产69精品久久久久毛片| 天堂在线一区二区| 久久久久国产精品麻豆| 欧美色精品天天在线观看视频| 老司机精品视频导航| 国产精品久久久久久久久晋中| 欧美少妇性性性| 国产成人精品免费一区二区| 亚洲综合999| 欧美浪妇xxxx高跟鞋交| 国产不卡免费视频| 亚洲欧洲美洲综合色网| 欧美精品乱码久久久久久按摩| 国产不卡视频在线播放| 日韩成人dvd| 亚洲男同性视频| 精品久久久久香蕉网| 精品视频一区二区不卡| av激情亚洲男人天堂| 极品瑜伽女神91| 日韩激情中文字幕| 亚洲综合一区二区三区| 中文字幕免费不卡在线| 欧美成人免费网站| 欧美年轻男男videosbes| 成人app软件下载大全免费| 日本不卡免费在线视频| 亚洲一区二区三区中文字幕在线| 日本一区二区三级电影在线观看 | 国产很黄免费观看久久| 久久精品国产成人一区二区三区| 亚洲人成网站色在线观看| 欧美激情中文字幕一区二区| 日韩欧美一区二区在线视频| 欧美色中文字幕| 色综合久久综合网97色综合| 成人午夜激情片| 国产精品小仙女| 精品一区二区三区久久| 免费的国产精品| 日韩国产欧美三级| 免费成人在线影院| 麻豆成人91精品二区三区| 麻豆精品视频在线观看免费| 日本91福利区| 捆绑紧缚一区二区三区视频| 裸体一区二区三区| 国产一区二区影院| 东方欧美亚洲色图在线| av电影在线观看一区| 91免费观看国产| 欧美三区在线观看| 欧美电视剧在线观看完整版| 久久亚洲影视婷婷| 国产精品视频看| 一区二区三区精密机械公司| 伊人一区二区三区| 天天综合天天综合色| 国产精品系列在线观看| 欧美成人三级在线| 精品国产人成亚洲区| 国产人成亚洲第一网站在线播放| 国产午夜精品一区二区| 国产精品沙发午睡系列990531| 国产精品久久久久aaaa樱花| 中文字幕欧美日本乱码一线二线 | 成人一区二区三区在线观看 | 日韩欧美中文字幕一区| 久久这里只有精品首页| 久久综合视频网| 日韩欧美一二三| 日韩精品一区二| 国产清纯在线一区二区www| 久久久三级国产网站| 久久精品男人天堂av| 中文无字幕一区二区三区| 久久在线观看免费| 亚洲国产人成综合网站| 免费在线观看精品| 国产乱码精品一区二区三区忘忧草| 91丨porny丨蝌蚪视频| 欧美人与禽zozo性伦| 精品人在线二区三区| 玉米视频成人免费看| 日本不卡在线视频| 国产成人亚洲综合a∨婷婷| av一二三不卡影片|