• <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>

            jake1036

            面試100 27二元樹的深度

                     面試100 27二元樹的深度

               一 問題描述:
                     二元樹的深度,深度定義為二叉樹從根到底最長的路徑的長度。
                   
              二 問題解決方案:
                    使用遞歸解決,最長深度定義為 max(length(p->left)  , length(p->right)) + 1 。
              
              三 代碼如下:
                   

            #include <iostream>
              
            using namespace std ;
              
             
              
            struct BinaryNode
              
            {
                 
            int data ;    
                 BinaryNode 
            * left ;
                 BinaryNode 
            * right ;         
              }
             ;
             
              
            int deep(BinaryNode * r)
              
            {
                  
            if(r)
                  
            {
                     
            return max(deep(r->left)  , deep(r->right)) + 1 ;            
                  }

                  
            else
                  
            return 0 ;
                  
                  
              }

             
              BinaryNode 
            *  buildTree()
              
            {
                   
            int data ;
                   BinaryNode 
            * r = 0 ;
                   cin
            >>data ; //輸入數據      
                   if(data > 0)
                   
            {
                      r 
            = (BinaryNode *) malloc(sizeof(BinaryNode)) ;
                      r
            ->data = data ;
                      r
            ->left =  buildTree()  ;
                      r
            ->right = buildTree() ;
                                        
                   }
                
                   
            return r ;
                   
                   
              }

             
             
            void preOrder(BinaryNode * r) 
             
            {
               
            if(r)
               
            {
                 cout
            <<r->data ;
                 preOrder(r
            ->left) ;
                 preOrder(r
            ->right) ;     
               }

               
                    
             }

             
              
            int main()
              
            {
                BinaryNode 
            * root = 0 ;
                root 
            = buildTree() ;
                preOrder(root) ;
                cout
            <<endl<<deep(root) ;
                system(
            "pause") ;
                
            return 0 ;    
              }

             

            posted on 2011-05-19 13:58 kahn 閱讀(258) 評論(0)  編輯 收藏 引用 所屬分類: 算法相關

            国内精品久久久久久久涩爱| 久久久久亚洲?V成人无码| 综合久久一区二区三区 | 久久综合久久美利坚合众国| 日韩欧美亚洲综合久久| 国产精品久久久久9999| 欧美一级久久久久久久大| 久久久久se色偷偷亚洲精品av | 精品久久久久久久久免费影院| 久久人人爽人人爽人人片AV不 | 精产国品久久一二三产区区别| 2021精品国产综合久久| 久久久久久久国产免费看| 亚洲αv久久久噜噜噜噜噜| 久久99精品久久久久久野外| 一本一本久久A久久综合精品| 91精品国产色综久久 | 亚洲精品蜜桃久久久久久| 久久这里只有精品视频99| 日韩久久无码免费毛片软件| 无夜精品久久久久久| 久久精品国产精品亚洲精品 | 国产无套内射久久久国产| 国产午夜精品久久久久九九| 97热久久免费频精品99| 久久久久久亚洲Av无码精品专口 | 色综合久久无码五十路人妻| 久久最近最新中文字幕大全| 狠狠色狠狠色综合久久| 精品久久久久久国产免费了| 99久久精品国产一区二区| 亚洲国产成人久久精品动漫| 久久精品国产精品亚洲精品 | 日韩久久久久中文字幕人妻| 无码人妻久久一区二区三区免费丨| 久久99精品久久久久婷婷| 亚洲国产精品成人AV无码久久综合影院 | 久久久久亚洲爆乳少妇无| 国产亚洲色婷婷久久99精品| 性做久久久久久免费观看| 一本色道久久88加勒比—综合|