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

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 丑石 閱讀(248) 評論(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>
            国产精品国产| 日韩亚洲成人av在线| 亚洲女女女同性video| 狠狠色狠狠色综合人人| 欧美三级欧美一级| 欧美精品免费视频| 欧美黄色成人网| 欧美日韩p片| 欧美午夜片在线免费观看| 欧美视频在线观看 亚洲欧| 欧美日韩午夜视频在线观看| 欧美日韩在线直播| 国产精品视频免费观看www| 国产精品久久毛片a| 国产欧美一二三区| 一区二区在线观看av| 91久久精品久久国产性色也91| 91久久久久久| 亚洲一区二区视频在线| 亚洲午夜成aⅴ人片| 午夜精品一区二区三区四区| 久久精品国产99国产精品| 麻豆精品视频在线观看| 亚洲国产一区在线| 亚洲欧洲综合| 欧美有码在线观看视频| 免费欧美电影| 欧美性色视频在线| 国产精品久久999| 黄色av成人| 亚洲影院污污.| 美女视频一区免费观看| 亚洲视频你懂的| 美女啪啪无遮挡免费久久网站| 国产精品www网站| 亚洲人被黑人高潮完整版| 午夜精品久久久久久久99黑人| 欧美成人精品激情在线观看| 亚洲制服av| 欧美日韩一二区| 亚洲欧洲综合| 久久婷婷亚洲| 亚洲免费一级电影| 欧美女人交a| 91久久国产自产拍夜夜嗨| 欧美在线观看视频一区二区三区 | 国产精品福利网| 亚洲国产精品悠悠久久琪琪| 午夜精品免费视频| 亚洲国产视频直播| 久久精品人人做人人综合| 欧美日韩综合| 亚洲少妇最新在线视频| 欧美激情第五页| 久久久久久久一区二区三区| 国产精品网站一区| 在线看不卡av| 欧美专区18| 校园春色综合网| 欧美性淫爽ww久久久久无| 日韩亚洲欧美高清| 亚洲高清三级视频| 久久黄金**| 伊人天天综合| 欧美国产日韩亚洲一区| 欧美h视频在线| 亚洲国产天堂久久国产91| 免费视频久久| 男人的天堂亚洲| 亚洲精品免费电影| 亚洲福利视频一区| 嫩模写真一区二区三区三州| 亚洲国内精品| 亚洲欧洲日韩在线| 欧美日韩一区在线视频| 亚洲女同同性videoxma| 亚洲一区二区免费| 国产午夜精品美女视频明星a级 | 激情校园亚洲| 欧美激情国产日韩| 欧美美女视频| 午夜精品短视频| 午夜亚洲福利| 在线播放日韩| 亚洲精品一区二区三区四区高清| 欧美人交a欧美精品| 亚洲一区二区三区久久| 亚洲欧美一级二级三级| 一区二区在线视频| 亚洲黄色在线| 国产精品亚洲一区| 男人的天堂亚洲| 欧美日韩精品高清| 午夜综合激情| 麻豆精品网站| 亚洲综合大片69999| 亚洲欧美日韩另类| 最新国产成人av网站网址麻豆| 亚洲国产人成综合网站| 国产精品网站视频| 欧美成人午夜激情在线| 欧美视频精品在线| 欧美/亚洲一区| 国产精品伦一区| 欧美成人精品一区| 国产精品日韩欧美一区二区三区 | 久久不射中文字幕| 裸体女人亚洲精品一区| 亚洲欧美激情一区| 久热精品视频在线观看| 亚洲在线一区二区三区| 久久网站免费| 亚洲福利视频网站| 亚洲欧美一区二区精品久久久| 久久精品综合| 亚洲在线视频网站| 美脚丝袜一区二区三区在线观看| 亚洲男女自偷自拍| 欧美电影免费观看大全| 久久精品成人一区二区三区蜜臀| 欧美韩日精品| 免费成人黄色| 在线综合+亚洲+欧美中文字幕| 黑人巨大精品欧美一区二区| 亚洲视频电影图片偷拍一区| 日韩视频精品| 媚黑女一区二区| 久久久夜夜夜| 国产亚洲成精品久久| 国产精品国产亚洲精品看不卡15| 欧美国产激情二区三区| 韩国成人福利片在线播放| 亚洲综合色丁香婷婷六月图片| 一区二区三区四区蜜桃| 欧美jizzhd精品欧美喷水| 久热精品视频在线免费观看| 国产色爱av资源综合区| 亚洲性人人天天夜夜摸| 一区二区三区 在线观看视频| 久久综合五月天婷婷伊人| 久久久久欧美精品| 国产一区二区成人| 欧美影院在线播放| 国产欧美精品va在线观看| 亚洲在线播放| 久久精品一区二区三区不卡牛牛| 国产精品久久国产精品99gif| 亚洲精品一区二区三| 一级成人国产| 国产精品久久久久久久浪潮网站| 一区二区三区日韩| 性色一区二区| 黑丝一区二区| 欧美二区视频| 在线亚洲观看| 久久久99爱| 亚洲国产日韩欧美一区二区三区| 欧美激情综合| 一区二区三区国产在线| 欧美精品免费在线| 99亚洲精品| 欧美一区二区三区日韩| 国产一区二区三区日韩| 久久中文字幕一区二区三区| 欧美成人a∨高清免费观看| 亚洲黄色一区| 欧美日韩午夜在线视频| 翔田千里一区二区| 欧美成人国产| 一区二区三区欧美亚洲| 国产精品视频免费观看www| 久久精品麻豆| 亚洲高清久久久| 在线视频一区二区| 国产精品免费小视频| 久久婷婷丁香| 亚洲影院高清在线| 亚洲国产精品999| 久久国产精品色婷婷| 亚洲伦理在线观看| 欧美日韩一区二区精品| 国产精品久久久久久户外露出| 美女精品一区| 亚洲欧美另类综合偷拍| 亚洲欧洲三级| 久久综合狠狠综合久久综合88| 在线视频日本亚洲性| 亚洲高清av在线| 国产偷自视频区视频一区二区| 欧美日韩国产区一| 久久久噜噜噜久久久| 在线视频你懂得一区| 亚洲人成精品久久久久| 模特精品在线| 久久久午夜精品| 欧美在线视频a| 亚洲女爱视频在线| 一区二区精品| 亚洲精一区二区三区| 亚洲国产综合91精品麻豆|