您的位置:首页 > 其它

[leetcode]Flatten Binary Tree to Linked List

2013-08-19 13:48 543 查看
先序遍历的一个变化。记录下上次的节点就行了。

public class Solution {
public void flatten(TreeNode root) {
Stack<TreeNode> stack = new Stack<TreeNode>();
TreeNode n = root;
TreeNode last = null;
while (n != null || !stack.empty()) {
if (n != null) {
if (last != null) {
last.left = null;
last.right = n;
}
last = n;
if (n.right != null) {
stack.push(n.right);
}
n = n.left;
}
else {
n = stack.pop();
}
}
}
}


  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: