算法(四)
1、二叉树后序遍历
#递归形式
public void postOrderTraverse1(TreeNode root){
if(root!=null){
postOrderTraverse1(root.left);
postOrderTraverse1(root.right);
System.out.print(root.val);
}
}
非递归(迭代算法)
private Stack<TreeNode> postSearch2(TreeNode root) { Stack<TreeNode> stack1 = new Stack<>(); Stack<TreeNode> stack2 = new Stack<>(); if(root==null) return stack2; stack1.push(root); while (!stack1.isEmpty()){ TreeNode node = stack1.pop(); stack2.push(node); if(node.left!=null){ stack1.push(node.left); } if(node.right!=null){ stack1.push(node.right); } } return stack2; }
算法 文章被收录于专栏
根据自己所见所闻进行算法归纳总结