卖逼视频免费看片|狼人就干网中文字慕|成人av影院导航|人妻少妇精品无码专区二区妖婧|亚洲丝袜视频玖玖|一区二区免费中文|日本高清无码一区|国产91无码小说|国产黄片子视频91sese日韩|免费高清无码成人网站入口

二叉樹(shù)遞歸算法理解 設(shè)計(jì)計(jì)算二叉樹(shù)中所有節(jié)點(diǎn)值之和的算法?

設(shè)計(jì)計(jì)算二叉樹(shù)中所有節(jié)點(diǎn)值之和的算法?遞歸方法樹(shù)中節(jié)點(diǎn)數(shù)=左子節(jié)點(diǎn)數(shù),右子節(jié)點(diǎn)數(shù)1樹(shù)為空:節(jié)點(diǎn)數(shù)為0inttreenodes(bitreet){intnum1,num2if(t==null)//樹(shù)為空

設(shè)計(jì)計(jì)算二叉樹(shù)中所有節(jié)點(diǎn)值之和的算法?

遞歸方法

樹(shù)中節(jié)點(diǎn)數(shù)=左子節(jié)點(diǎn)數(shù),右子節(jié)點(diǎn)數(shù)1

樹(shù)為空:節(jié)點(diǎn)數(shù)為0

inttreenodes(bitreet)

{

intnum1,num2

if(t==null)//樹(shù)為空

return(0)

num1=treenodes(t->lchild)

num2=treenodes(t->rchild)

return(num2 num1 1)//左、右子節(jié)點(diǎn)數(shù)1

]}

int BTREE depth(bitnode*BT){//如果(BT==null),則查找二叉樹(shù)的深度。//空樹(shù)返回0return 0else{int dep1=BTREE depth(BT->lchild)//遞歸調(diào)用逐層分析int dep2=BTREE depth(BT->rchild)if(dep1>dep2)return dep1 1esel return dep2 1}int leave(bitnode*BT){//如果(BT==null)返回0else{if(BT->lchild==null&;bt->rchild)}==Null)return 1elsereturn(leave(bt->lchild)leave(bt->rchild))}}}這是學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)的練習(xí)。它是遞歸的形式。當(dāng)你理解它的時(shí)候,你需要考慮一下,但是用這種方式寫(xiě)函數(shù)會(huì)相對(duì)簡(jiǎn)單。

二叉樹(shù)求葉子結(jié)點(diǎn)個(gè)數(shù)的算法(遞歸遍歷)?

1. 計(jì)算樹(shù)的深度d。2因?yàn)樗且粋€(gè)完整的二叉樹(shù),非終結(jié)節(jié)點(diǎn)數(shù)={2^(D-1)}-1//遞歸計(jì)算樹(shù)的深度int depth(treenode*t){if(t==null)返回0 else{return max(depth(t->left),depth(t->right))1}//計(jì)算完整的二叉樹(shù),非葉節(jié)點(diǎn)數(shù)int countnode(treenode*t) {int d=深度(t)返回功率(2,d-1)-1}