1261. 在受污染的二叉树中查找元素
Posted Debroon
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了1261. 在受污染的二叉树中查找元素相关的知识,希望对你有一定的参考价值。
1261. 在受污染的二叉树中查找元素
题目
传送门:https://leetcode.cn/problems/find-elements-in-a-contaminated-binary-tree/
算法设计:深度优先搜索
还原二叉树的时候只需要遍历所有节点,通过函数参数传递每个节点的值。
由于节点的个数规模不算大,所以可以直接用一个 HashSet 缓存所有节点值,帮助 find 函数快速判断。
class FindElements
unordered_set<int> cache;
void recover(TreeNode *root, int prev)
if(!root) return;
root->val = prev;
cache.insert(root->val);
recover(root->left, 2*prev + 1);
recover(root->right, 2*prev + 2);
public:
FindElements(TreeNode* root) recover(root, 0);
bool find(int target) return cache.count(target) > 0;
;
以上是关于1261. 在受污染的二叉树中查找元素的主要内容,如果未能解决你的问题,请参考以下文章
LeetCode 5264 在受污染的二叉树中查找元素 Find Elements in a Contaminated Binary Tree