Skip to content

Latest commit

 

History

History
40 lines (33 loc) · 1.09 KB

Question_102.md

File metadata and controls

40 lines (33 loc) · 1.09 KB

LeetCode Records - Question 102 Binary Tree Level Order Traversal

Attempt 1: Use two ArrayList to record the current level of nodes and integers

class Solution {
    public List<List<Integer>> levelOrder(TreeNode root) {
        List<List<Integer>> result = new ArrayList<>();
        if (root == null) {
            return result;
        }

        List<TreeNode> prevNodes = new ArrayList<>();
        prevNodes.add(root);

        while (!prevNodes.isEmpty()) {
            List<TreeNode> nodes = new ArrayList<>();
            List<Integer> integers = new ArrayList<>();
            
            for (TreeNode node: prevNodes) {
                integers.add(node.val);
                if (node.left != null) {
                    nodes.add(node.left);
                }
                if (node.right != null) {
                    nodes.add(node.right);
                }
            }

            result.add(integers);
            prevNodes = nodes;
        }        

        return result;
    }
}
  • Runtime: 1 ms (Beats: 88.22%)
  • Memory: 44.79 MB (Beats: 66.87%)