精品日本亚洲一区二区三区,伊人久久狼人色精品无码 ,日鲁夜鲁天天鲁视频,国产精品久久亚洲,秋霞理论理论福利院久久,国产日韩欧美视频一区二区三区,色九九,国产精品美女久久久久久免费 ,九九干,韩国精品一区二区三区

考研論壇

數據結構

查看數: 884 | 評論數: 11 | 收藏 0
關燈 | 提示:支持鍵盤翻頁<-左 右->
    組圖打開中,請稍候......
發布時間: 2014-12-13 22:12

正文摘要:

題目:輸入一個整數data和一棵二元樹,從樹的根節點開始往下訪問一直到葉節點,所經過的所有節點形成一條路徑。打印出路徑的和與data相等的所有元素。 我的算法:看看對不對啊。 ...

回復

tang19930314 發表于 2014-12-21 12:56
劉中鋒 發表于 2014-12-21 12:53
有,是總結部分的思考題

page

來自Android客戶端

劉中鋒 發表于 2014-12-21 12:53

有,是總結部分的思考題
tang19930314 發表于 2014-12-21 09:19
劉中鋒 發表于 2014-12-20 23:13
你的那個算法?

那人寫的有問題,根本就沒賦進去

來自Android客戶端

tang19930314 發表于 2014-12-21 09:18
劉中鋒 發表于 2014-12-20 23:13
你的那個算法?

王道有嗎

來自Android客戶端

劉中鋒 發表于 2014-12-20 23:13
琴魂醉 發表于 2014-12-14 19:55
好奇怪,棧那邊賦值的i顯示不出來。

你的那個算法?
劉中鋒 發表于 2014-12-20 23:10
琴魂醉 發表于 2014-12-14 19:47
我只是說非遞歸先序比較簡單,沒說遞歸不可以
typedef struct btnode
{

好好,謝謝啊,
琴魂醉 發表于 2014-12-14 19:55
好奇怪,棧那邊賦值的i顯示不出來。
琴魂醉 發表于 2014-12-14 19:53
遞歸都可以轉換成非遞歸算法,所以別局限于遞歸,只是遞歸相對于非遞歸好理解,容易想。
琴魂醉 發表于 2014-12-14 19:47
本帖最后由 琴魂醉 于 2014-12-14 20:06 編輯
劉中鋒 發表于 2014-12-14 12:59
是嗎,王道上的題,它說用遞歸

我只是說非遞歸先序比較簡單,沒說遞歸不可以
typedef struct btnode
{
int data,flag=0;
struct btnode *lchild,*rchild;
}*BiTree,btnode;
void pre(BiTree bt,int datasum)//通過先序非遞歸,棧中保存的都是祖先結點
{
int top=0,sum=0,i;
BtTree s[],s1[],p=bt;//棧足夠大
while(p||top>0)
{
    if(p)
   {
     s[++top]=p;
     if(!p->lchild&&!p->rchild)//判斷是否是葉子結點
    {
        sum=0;
        for(i=top;i>0;--i)//把棧中祖先結點復制到s1中
        {
          s1(i)=s (i);  //由于[]沒法顯示,我就是用()當做[]
          sum+=s (i)->data;
        }//endfor
        if(sum==datasum)
       {      
           for(i=1;i<top;++i)//依次打印,即可從祖先結點到當前結點
          {
           printf("%d/t",s1 (i)->data);
          }//endfor
        }//endif
     }//endif
     p=p->lchild;//訪問左孩子     
   }
   else
   {
    p=s[top--];
    p=p->rchild;
   }
}//endwhile
}

關于我們|商務合作|小黑屋|手機版|聯系我們|服務條款|隱私保護|幫學堂| 網站地圖|院校地圖|漏洞提交|考研幫

GMT+8, 2026-5-23 09:38 , Processed in 0.069353 second(s), Total 25, Slave 25(Usage:7.25M, Links:[2]1,1_1) queries , Redis On.

Powered by Discuz!

© 2001-2017 考研 Inc.

快速回復 返回頂部 返回列表
× 關閉