給定乙個二叉樹
struct treelinknode填充它的每個 next 指標,讓這個指標指向其下乙個右側節點。如果找不到下乙個右側節點,則將 next 指標設定為
null
。
初始狀態下,所有 next 指標都被設定為null
。
說明:示例:
給定二叉樹,
1呼叫你的函式後,該二叉樹變為:/ \
2 3
/ \ \
4 5 7
1 -> null/ \
2 -> 3 -> null
/ \ \
4-> 5 -> 7 -> null
/*演算法思想:
實際上是樹的層序遍歷的應用。
這道題是每個節點的右向指標這道題的延伸。即不是完美二叉樹了。但是還是可以一樣的方法,所以這種非遞迴的解法很通用,因為是用的層次遍歷加佇列它才不管你是不是完美二叉樹呢。需要用到queue來輔助,由於是層序遍歷,每層的節點都按順序加入queue中,而每當從queue中取出乙個元素時,將其next指標指向queue中下乙個節點即可。需要巧妙的通過給queue中新增空指標null來達到分層的目的,使每層的最後乙個節點的next可以指向null。
*///
演算法實現:/**
* definition for binary tree with next pointer.
* struct treelinknode
* }; */
class
solution
else}}
};
117 填充每個節點的下乙個右側節點指標 II
116題為完美二叉樹,所以這題116的遞迴法這裡不適用。leetcode 116.填充每個節點的下乙個右側節點指標 解法一 層次遍歷 definition for a node.class node node int val val val left null right null next nul...
117 填充每個節點的下乙個右側節點指標 II
給定乙個二叉樹 struct node 填充它的每個 next 指標,讓這個指標指向其下乙個右側節點。如果找不到下乙個右側節點,則將 next 指標設定為 null。初始狀態下,所有 next 指標都被設定為 null。高階 你只能使用常量級額外空間。使用遞迴解題也符合要求,本題中遞迴程式占用的棧空...
117 填充每個節點的下乙個右側節點指標 II
題目描述 給定乙個二叉樹 struct node 填充它的每個 next 指標,讓這個指標指向其下乙個右側節點。如果找不到下乙個右側節點,則將 next 指標設定為 null。初始狀態下,所有 next 指標都被設定為 null。高階 你只能使用常量級額外空間。使用遞迴解題也符合要求,本題中遞迴程式...