日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

java 非递归求二叉树高度_非递归算法实现二叉树高度

發(fā)布時(shí)間:2024/10/8 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java 非递归求二叉树高度_非递归算法实现二叉树高度 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

思路:

嘻嘻,請(qǐng)讀者自己手動(dòng)模擬。博主這里不知道怎么說(shuō)。

拓展:

該算法思路也適用于

(1)每層的結(jié)點(diǎn)個(gè)數(shù)

(2)樹(shù)的最大寬度

(3)節(jié)點(diǎn)位于某一層

int height(BiTree T){

if(T==null)

return 0;

int front=-1, rear=-1;//front 出隊(duì)指針 rear 入隊(duì)指針

int last = 0, level=0;//last 每一層的最右指針(front==last時(shí)候一層遍歷結(jié)束 level++)

BiTree Q[Maxsize];//模擬隊(duì)列

Q[++rear] = T;

BiTree p;

while(front

p = Q[++front];//開(kāi)始出隊(duì) 因?yàn)閒ront要趕到lash 實(shí)現(xiàn)level++

if(p->lchild)

Q[++rear] = p->lchild;

if(p->rchild)

Q[++rear] = p->rchild;

if(front==last){

level++;

last=rear;//last指向下層節(jié)點(diǎn)

}

}

}

您可能感興趣的

總結(jié)

以上是生活随笔為你收集整理的java 非递归求二叉树高度_非递归算法实现二叉树高度的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。