LeetCode 783二叉搜索树节点最小距离-简单
生活随笔
收集整理的這篇文章主要介紹了
LeetCode 783二叉搜索树节点最小距离-简单
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
給你一個二叉搜索樹的根節點 root ,返回 樹中任意兩不同節點值之間的最小差值 。
示例 1:
輸入:root = [4,2,6,1,3]
輸出:1
示例 2:
輸入:root = [1,0,48,null,null,12,49]
輸出:1
提示:
樹中節點數目在范圍 [2, 100] 內 0 <= Node.val <= 105 差值是一個正數,其數值等于兩值之差的絕對值解題思路:
二叉搜索樹中序遍歷的性質:一棵二叉搜索樹的中序遍歷序列是一個非遞減的有序序列。
代碼如下:
/*** 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 { public:int minDiffInBST(TreeNode* root) {int ans = INT_MAX,pre = -1;dfs(root,pre,ans);return ans;}void dfs(TreeNode *root,int &pre,int &ans){if (root==nullptr) return ;dfs(root->left,pre,ans);if (pre==-1){pre = root->val;}else {ans = min(root->val-pre,ans);pre = root->val;}dfs(root->right,pre,ans);} };總結
以上是生活随笔為你收集整理的LeetCode 783二叉搜索树节点最小距离-简单的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: LeetCode 530二叉搜索树的最小
- 下一篇: 祛湿热最好的方法是什么