本文主要是介绍1026. 节点与其祖先之间的最大差值,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1026. 节点与其祖先之间的最大差值
题目链接:1026. 节点与其祖先之间的最大差值
代码如下:
/*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode() : val(0), left(nullptr), right(nullptr) {}* TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}* TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}* };*/
class Solution {
private:int dfs(TreeNode* root,int mi,int ma){if(root==nullptr) return 0;int diff=max(abs(root->val-mi),abs(root->val-ma));mi=min(mi,root->val);ma=max(ma,root->val);diff=max(diff,dfs(root->left,mi,ma));diff=max(diff,dfs(root->right,mi,ma));return diff;}public:int maxAncestorDiff(TreeNode* root) {return dfs(root,root->val,root->val);}
};
这篇关于1026. 节点与其祖先之间的最大差值的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!