青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

linux&c++ R&D

programing is a pleasure!

A simple application example of binary tree structure

Binary Tree is  widely  employed in many cases as a very important data structrue.
I will take a simple example to introduce it.
Suppose we want to handle the more general problem of counting the occurrences of all the
words in some input.Since the list of words isn't known in advance,we can't conveniently sort it and use a binary search.Yet we can't do a linear search for each word as it arrives,to see if it's already been seen;the program would take a long time.
a binary tree will help us to solve the problem.
terminal:
First we define the node structure,which is used to store the infomation of each word.
it consists of word name,count,two pointer,which point to left subtree and right substree.
 secondly,tree structure is a binary sorted tree.
each word has a unique node in the tree.
the detailed code implemention below:

// wordTree.h: interface for the wordTree class.
//
//////////////////////////////////////////////////////////////////////
#ifndef        __WORDTREE_
#define        __WORDTREE_

class wordTree;


class wordNode{
friend 
class wordTree;
private:
   
char *word;
   
int count;
   wordNode 
*left,*right;
private:
   wordNode(
const char* w,wordNode *left=0,wordNode *right=0,int count=1);
   
~wordNode();
    inline 
void incrcount(){
        count
++;
    }

}
;
class wordTree  
{
 
public:
    wordTree():root(
0){
        
    }

    virtual 
~wordTree(){
        freetree(root);
    }

    
void addWord(const char *w);
    
void printTree();
private:
    wordNode
* addWord(wordNode *p,const char *w);
    
void printTree(wordNode *p);
    
void freetree(wordNode *p);
    wordNode
* root;
}
;

#endif 
// end __WORDTREE_

 

// wordTree.cpp: implementation of the wordTree class.
//
//////////////////////////////////////////////////////////////////////

#include 
"wordTree.h"
#include 
<string.h>
#include 
<iostream>


wordNode::wordNode(
const char* w,wordNode *left/* =0 */,wordNode *right/* =0 */,int count/* =0 */)
{
  
int len=strlen(w);
  word
=new char[len+1];
  strcpy(word,w);
  
  
this->left=left;
  
this->right=right;
  
this->count=count;

}

wordNode::
~wordNode()
{
    
if(word!=0)
        delete [] word;
}




void wordTree::addWord(const char *w){

    root
=addWord(root,w);

}

wordNode
* wordTree::addWord(wordNode *p,const char *w)
{
 
int cond;
 
if(p==0)
     p
=new wordNode(w);
  
else if((cond=strcmp(w,p->word))==0)
      p
->incrcount();
 
  
else if (cond<0)
      p
->left=addWord(p->left,w);
  
else
      p
->right=addWord(p->right,w);
  
return p;
}

void wordTree::printTree()
{
  printTree(root);
 }

void wordTree::printTree(wordNode *p)
{
 
if (p==0)
     
return;
 printTree(p
->left);
 std::cout
<<p->word<<"  count:  "<<p->count<<std::endl;
 printTree(p
->right);
}

void wordTree::freetree(wordNode *p)
{
  
if(p==0)
      
return;
  freetree(p
->left);
  freetree(p
->right);
  delete p;

}

 

//test.cpp
//test the example

#include 
"wordTree.h"
#include 
<iostream>
#include 
<string>
int main()
{
 wordTree wt;
 std::string str;
 
while (std::cin>>str)
 
{
   wt.addWord(str.c_str());
   wt.printTree();
 }


 

}

       

posted on 2007-05-17 13:17 丑石 閱讀(249) 評論(0)  編輯 收藏 引用


只有注冊用戶登錄后才能發(fā)表評論。
網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


My Links

Blog Stats

News

常用鏈接

留言簿(1)

隨筆分類(13)

隨筆檔案(17)

文章檔案(1)

相冊

收藏夾(1)

Friends' blog

useful sites

搜索

積分與排名

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            久久免费少妇高潮久久精品99| 老鸭窝亚洲一区二区三区| 亚洲国产一区二区a毛片| 久久久久久久精| 在线观看日韩av先锋影音电影院 | 欧美高清视频在线观看| 91久久国产精品91久久性色| 亚洲电影免费观看高清完整版在线观看 | 尤物九九久久国产精品的分类| 久久综合影音| 欧美成人精品一区二区三区| 在线视频日本亚洲性| 亚洲视频综合在线| 国产一区视频在线观看免费| 另类图片综合电影| 欧美精品国产一区| 亚洲欧美美女| 久久久久久香蕉网| 一区二区欧美精品| 性感少妇一区| 亚洲裸体视频| 亚洲在线第一页| 亚洲国产精品久久久久秋霞不卡| 亚洲人成人一区二区在线观看| 国产精品大片| 欧美激情免费在线| 国产精品久久国产愉拍| 蜜臀99久久精品久久久久久软件 | 欧美福利在线| 午夜久久资源| 欧美国产成人精品| 久久精品夜色噜噜亚洲a∨| 免费日韩av| 久久精品视频在线| 欧美日韩国产电影| 嫩模写真一区二区三区三州| 国产精品久久久久国产a级| 欧美jizz19性欧美| 国产乱码精品一区二区三| 欧美激情国产高清| 国产伦精品一区二区三区高清版 | 亚洲在线播放| 日韩午夜av| 裸体一区二区三区| 久久精品一区二区三区不卡牛牛| 欧美精品日韩三级| 欧美成人福利视频| 国产日韩欧美中文在线播放| 日韩午夜激情电影| 亚洲精品久久| 六月丁香综合| 欧美成年视频| 在线观看免费视频综合| 欧美一区2区三区4区公司二百| 99re6这里只有精品| 久久久久.com| 久久天天狠狠| 一区一区视频| 久久久噜噜噜久久中文字幕色伊伊| 午夜久久久久久久久久一区二区| 欧美日韩精品在线观看| 欧美黑人国产人伦爽爽爽| 亚洲高清免费| 免费不卡在线视频| 欧美激情欧美狂野欧美精品| 亚洲风情亚aⅴ在线发布| 久久精品一级爱片| 欧美不卡视频一区发布| 在线日韩日本国产亚洲| 久久色中文字幕| 牛牛精品成人免费视频| 亚洲电影一级黄| 欧美福利一区二区| 亚洲精品在线观看视频| 在线亚洲自拍| 国产麻豆精品在线观看| 欧美一区二区成人| 久久九九国产精品怡红院| 国产在线精品成人一区二区三区| 欧美在线免费观看| 欧美成人综合网站| 亚洲精品色图| 国产精品九九| 欧美在线首页| 亚洲国产日韩一区二区| 亚洲天堂偷拍| 国产三级欧美三级日产三级99| 欧美在线啊v一区| 欧美高清视频一区二区| aⅴ色国产欧美| 国产日韩专区在线| 久久一区二区三区av| 亚洲韩国日本中文字幕| 午夜在线一区二区| 伊人久久亚洲影院| 欧美日韩一本到| 欧美在线视频二区| 亚洲精品裸体| 久久黄色小说| 一区二区精品在线| 国产精品三级久久久久久电影| 欧美亚洲日本国产| 亚洲欧洲日本一区二区三区| 亚洲欧美高清| 亚洲国产精品尤物yw在线观看| 欧美日韩在线第一页| 亚洲精品国产精品国产自| 欧美色精品天天在线观看视频| 午夜一区二区三区不卡视频| 欧美激情精品久久久久久| 亚洲欧美一区二区三区久久| 亚洲国产高清视频| 国产片一区二区| 欧美日本亚洲韩国国产| 欧美专区福利在线| 一区二区三区蜜桃网| 亚洲电影天堂av| 欧美中文字幕| 9i看片成人免费高清| 亚洲大胆女人| 国产日韩在线不卡| 欧美性色aⅴ视频一区日韩精品| 久久九九电影| 香蕉尹人综合在线观看| 一本久道久久综合中文字幕| 欧美a级理论片| 久久免费国产| 久久精品视频免费观看| 国产精品99久久久久久宅男 | 亚洲电影在线| 国产日韩欧美一区在线| 国产精品豆花视频| 欧美日韩国语| 欧美精品免费在线| 米奇777超碰欧美日韩亚洲| 性高湖久久久久久久久| 亚洲一级二级| 一区二区三区日韩欧美精品| 亚洲激情视频在线| 欧美激情片在线观看| 麻豆国产va免费精品高清在线| 欧美中文在线观看国产| 欧美一区二区三区免费视频| 亚洲女同性videos| 亚洲性感美女99在线| 亚洲一区免费观看| 亚洲一区二区三区在线看| 一区二区三区四区五区视频 | 在线播放亚洲一区| 精品二区视频| 亚洲高清123| 亚洲人成久久| 一本大道久久a久久综合婷婷| 99在线精品视频在线观看| 99在线观看免费视频精品观看| 日韩视频精品| 亚洲综合成人婷婷小说| 欧美一级电影久久| 久久久精品欧美丰满| 美女国内精品自产拍在线播放| 欧美~级网站不卡| 欧美激情在线狂野欧美精品| 亚洲激情二区| 一区二区三区www| 午夜精品久久久久久99热软件| 久久精品国产欧美激情| 免费精品99久久国产综合精品| 欧美激情一区在线| 国产精品久久久久7777婷婷| 国产在线观看精品一区二区三区| 一区在线视频观看| 日韩一级片网址| 久久精品国产一区二区三区免费看 | 韩日视频一区| 亚洲人成人一区二区在线观看| 99亚洲精品| 久久激情婷婷| 亚洲激情第一区| 午夜精品久久| 欧美激情网友自拍| 国产精品视区| 亚洲人精品午夜| 欧美一二三视频| 亚洲国产美女| 欧美亚洲一级片| 欧美日韩亚洲一区三区| 樱桃视频在线观看一区| 中文日韩电影网站| 美女999久久久精品视频| 日韩手机在线导航| 老色批av在线精品| 国产精品美女久久久久av超清| 亚洲国产福利在线| 欧美伊人久久久久久久久影院 | 亚洲精品国产精品国自产观看| 亚洲一区亚洲二区| 欧美xx视频| 黄色成人在线网站| 欧美亚洲视频一区二区| 亚洲福利免费|