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

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>
            国产精品免费观看在线| 亚洲欧美日韩国产综合在线 | 美女免费视频一区| 亚洲国产天堂久久综合网| 亚洲高清精品中出| 另类专区欧美制服同性| 亚洲乱码久久| 在线综合亚洲| 国产亚洲欧美日韩日本| 美女福利精品视频| 欧美激情国产高清| 亚洲男人影院| 久久久国产精品一区二区中文| 亚洲高清网站| 亚洲免费电影在线观看| 国产精品美女久久久久久2018 | 亚洲狼人精品一区二区三区| 欧美午夜精品久久久久久久| 久久激情网站| 欧美大片在线观看一区| 亚洲综合色在线| 久久精品亚洲乱码伦伦中文| 亚洲精品一区久久久久久| 一本色道久久综合亚洲精品不 | 在线观看亚洲一区| 亚洲免费观看高清在线观看 | 亚洲国产免费| 亚洲天堂成人| 在线精品国产欧美| 一区二区电影免费在线观看| 国产一区二区观看| 亚洲三级色网| 国产婷婷一区二区| 91久久精品网| 国产一区视频观看| 亚洲精品中文字| 国模精品娜娜一二三区| 亚洲精品一区二区三区av| 国产亚洲a∨片在线观看| 亚洲经典在线看| 国产综合网站| 亚洲天堂网在线观看| 亚洲国产精品久久| 亚洲一区免费网站| 亚洲精品国产精品国产自| 亚洲欧美另类中文字幕| 亚洲美女毛片| 久久国产黑丝| 亚洲综合国产| 欧美国产精品日韩| 久久噜噜噜精品国产亚洲综合| 欧美日韩精品免费观看| 蜜臀av一级做a爰片久久| 欧美亚韩一区| 久久综合久久综合这里只有精品| 欧美精品1区| 老司机aⅴ在线精品导航| 国产精品久久国产精麻豆99网站| 欧美成人一区二区在线| 国产三级欧美三级日产三级99| 亚洲人体1000| 亚洲国产精品成人久久综合一区| 亚洲午夜激情网页| 99在线精品视频| 久久一区精品| 久久国产色av| 国产精品s色| 亚洲国产精品女人久久久| 国产亚洲美州欧州综合国| 一区二区三区视频观看| 亚洲靠逼com| 久久人体大胆视频| 久久久久久国产精品mv| 国产精品a级| 亚洲精品综合精品自拍| 亚洲日本免费电影| 久久精品二区亚洲w码| 欧美亚洲一区二区在线观看| 欧美日韩三区| 亚洲精品久久7777| 亚洲黄色性网站| 久久男人av资源网站| 久久精品国产免费观看| 国产精品乱码妇女bbbb| 夜夜夜久久久| 亚洲视频在线二区| 欧美精品在线视频| 亚洲福利免费| 亚洲国产精品女人久久久| 久久久久国产精品人| 久久精品国产一区二区三| 国产精品呻吟| 亚洲制服欧美中文字幕中文字幕| 亚洲自拍偷拍麻豆| 国产精品久久午夜| 国产精品99久久久久久人| 制服丝袜亚洲播放| 欧美日韩一区二区三区免费看 | 久久一区视频| 国产一本一道久久香蕉| 性欧美xxxx视频在线观看| 午夜精品久久久久久久男人的天堂| 欧美性久久久| 亚洲婷婷国产精品电影人久久| 亚洲乱码视频| 欧美精品久久久久久久久老牛影院| 亚洲高清一区二区三区| 亚洲精品少妇| 欧美日韩1080p| 亚洲毛片在线免费观看| 正在播放亚洲| 国产精品性做久久久久久| 亚洲欧美日韩综合aⅴ视频| 午夜精品视频一区| 国产精品欧美在线| 午夜精品av| 久久久久久一区二区| 激情懂色av一区av二区av| 久久先锋影音| 亚洲福利一区| 一卡二卡3卡四卡高清精品视频| 欧美精品激情blacked18| 亚洲免费成人| 欧美一区二区三区免费观看视频| 国产日韩精品在线观看| 久久精品av麻豆的观看方式| 美国成人毛片| 亚洲欧洲午夜| 欧美日韩在线精品| 一区二区三区视频在线| 亚洲影视中文字幕| 国产一区二区毛片| 免费成人av资源网| 日韩亚洲欧美成人| 欧美一区二视频| 伊人激情综合| 欧美激情视频在线播放| 这里只有精品在线播放| 欧美在线视频网站| 极品日韩久久| 欧美日本一区| 亚洲在线视频| 乱码第一页成人| 在线视频日韩精品| 国产精品亚发布| 久热精品视频| 99爱精品视频| 久久国产精品色婷婷| 亚洲黄一区二区三区| 欧美日韩免费在线观看| 欧美一级欧美一级在线播放| 美女福利精品视频| 亚洲一级黄色片| 黄色一区二区三区四区| 欧美激情一区二区三区| 亚洲欧美日韩网| 欧美freesex交免费视频| 99热在这里有精品免费| 国产精品美腿一区在线看| 久久视频一区| 亚洲视频 欧洲视频| 免费亚洲视频| 亚洲一区一卡| 1024欧美极品| 国产精品久久中文| 理论片一区二区在线| 日韩一区二区免费看| 久久青青草综合| 一区二区国产精品| 激情视频亚洲| 国产精品国产三级国产a| 久久综合色播五月| 亚洲伊人网站| 亚洲福利国产| 久久夜色精品国产噜噜av| 国产精品99久久不卡二区| 激情欧美国产欧美| 国产精品精品视频| 久久综合综合久久综合| 亚洲天堂av在线免费| 亚洲黄色精品| 快she精品国产999| 亚洲欧美在线高清| 亚洲精品视频二区| 国产亚洲欧美激情| 欧美午夜一区二区福利视频| 久久欧美肥婆一二区| 亚洲免费网站| 亚洲精品日韩一| 久久久久在线观看| 亚洲欧美成人综合| 99v久久综合狠狠综合久久| 狠狠色丁香婷婷综合| 欧美视频国产精品| 欧美激情小视频| 久久久夜色精品亚洲| 亚洲在线一区| 日韩视频二区| 欧美14一18处毛片| 久久裸体艺术|