Skip to content

Latest commit

 

History

History
32 lines (25 loc) · 875 Bytes

File metadata and controls

32 lines (25 loc) · 875 Bytes

LeetCode Records - Question 1469 Find All The Lonely Nodes

Attempt 1: Pass the status of parent node

class Solution {
    public List<Integer> getLonelyNodes(TreeNode root) {
        List<Integer> result = new ArrayList<>();

        getLonelyNodesRecursion(root, false, result);

        return result;
    }

    private void getLonelyNodesRecursion(TreeNode root, boolean isOnly, List<Integer> result) {
        if (root == null) {
            return;
        }

        if (isOnly) {
            result.add(root.val);
        }
        isOnly = root.left != null && root.right == null || root.left == null && root.right != null;

        getLonelyNodesRecursion(root.left, isOnly, result);
        getLonelyNodesRecursion(root.right, isOnly, result);
    }
}
  • Runtime: 0 ms (Beats: 100.00%)
  • Memory: 44.61 MB (Beats: 36.20%)