Class FindElements
-
- All Implemented Interfaces:
public final class FindElements1261 - Find Elements in a Contaminated Binary Tree.
Medium
Given a binary tree with the following rules:
root.val == 0If
treeNode.val == xandtreeNode.left != null, thentreeNode.left.val == 2 * x + 1If
treeNode.val == xandtreeNode.right != null, thentreeNode.right.val == 2 * x + 2
Now the binary tree is contaminated, which means all
treeNode.valhave been changed to-1.Implement the
FindElementsclass:FindElements(TreeNode* root)Initializes the object with a contaminated binary tree and recovers it.bool find(int target)Returnstrueif thetargetvalue exists in the recovered binary tree.
Example 1:
Input "FindElements","find","find" [[-1,null,-1],1,2]
Output: null,false,true
Explanation:
FindElements findElements = new FindElements([-1,null,-1]); findElements.find(1); // return False findElements.find(2); // return TrueExample 2:
Input "FindElements","find","find","find" [[-1,-1,-1,-1,-1],1,3,5]
Output: null,true,true,false
Explanation:
FindElements findElements = new FindElements([-1,-1,-1,-1,-1]); findElements.find(1); // return True findElements.find(3); // return True findElements.find(5); // return FalseExample 3:
Input "FindElements","find","find","find","find" [[-1,null,-1,-1,null,-1],2,3,4,5]
Output: null,true,false,false,true
Explanation:
FindElements findElements = new FindElements([-1,null,-1,-1,null,-1]); findElements.find(2); // return True findElements.find(3); // return False findElements.find(4); // return False findElements.find(5); // return TrueConstraints:
TreeNode.val == -1The height of the binary tree is less than or equal to
20The total number of nodes is between <code>1, 10<sup>4</sup></code>
Total calls of
find()is between <code>1, 10<sup>4</sup></code><code>0 <= target <= 10<sup>6</sup></code>
-
-
Constructor Summary
Constructors Constructor Description FindElements(TreeNode root)
-