zoukankan      html  css  js  c++  java
  • LeetCode 144 二叉树的前序遍历

    LeetCode 144 二叉树的前序遍历

    问题描述
    给定一个二叉树,返回它的 前序 遍历。

    迭代法

    执行用时:0 ms, 在所有 Java 提交中击败了100.00%的用户
    内存消耗:36.4 MB, 在所有 Java 提交中击败了98.91%的用户

    class Solution {
        public List<Integer> preorderTraversal(TreeNode root) {
            //迭代实现前序遍历
            List<TreeNode> stack = new ArrayList<>();
            List<Integer> ans = new ArrayList<>();
            while(!stack.isEmpty() || root!=null) {
                if(root!=null) {
                    if(root.right!=null) {
                        stack.add(root.right);
                    }
                    ans.add(root.val);
                    root = root.left;
                }
                else {
                    root = stack.get(stack.size()-1);
                    stack.remove(stack.size()-1);
                }
            }
    
            return ans;
        }
    }
    
  • 相关阅读:
    亚瑟阿伦36问
    Oracle动态SQL
    Oracle分页
    Oracle游标+动态SQL
    Oracle %type %rowtype
    Oracle游标
    Oracle存储过程和Java调用
    Oracle循环
    Oracle(if判断)
    Oracle视图
  • 原文地址:https://www.cnblogs.com/CodeSPA/p/13882698.html
Copyright © 2011-2022 走看看