class solution
/*** 中序遍歷
* 在遍歷每乙個節點的時候,儲存上乙個遍歷的節點,然後計算差值
* 由於是中序遍歷,遍歷的順序是從小到大,因此root.val - prev.val始終大於0
*/getminimumdifference(root.left);
if (prev != null)
prev = root;
getminimumdifference(root.right);
return res;
}}/**
* 時間複雜度 o(n)
* 空間複雜度 o(n)
*/
class solution
stackstack = new stack<>();
treenode cur = root;
/*** 中序遍歷
*/while (cur != null || !stack.isempty())
else
prev = cur;
cur = cur.right;}}
return res;
}}/**
* 時間複雜度 o(n)
* 空間複雜度 o(n)
*/
530 二叉搜尋樹的最小絕對差
530.二叉搜尋樹的最小絕對差 中序遍歷是乙個公升序陣列,而最小值的產生一定是在陣列中相鄰兩個元素的差之中,因此,在中序遍歷時候抓住前乙個數,和當前數字的差 於最小值作比較 一定需要遍歷所有節點,因為不知道到底是哪兩個節點之間產生的。用乙個輔助鍊錶,將中序遍歷得到的值壓入鍊錶中,然後得到兩個節點之間...
530 二叉搜尋樹的最小絕對差
題目描述 給你一棵所有節點為非負值的二叉搜尋樹,請你計算樹中任意兩節點的差的絕對值的最小值。示例 輸入 輸出 1 解釋 最小絕對差為 1,其中 2 和 1 的差的絕對值為 1 或者 2 和 3 樹中至少有 2 個節點。方法1 主要思路 1 中序遍歷儲存前乙個結點,判斷每個結點和前乙個結點的差是否更小...
530 二叉搜尋樹的最小絕對差
給你一棵所有節點為非負值的二叉搜尋樹,請你計算樹中任意兩節點的差的絕對值的最小值。示例 輸入 1 3 2 輸出 1 解釋 最小絕對差為 1,其中 2 和 1 的差的絕對值為 1 或者 2 和 3 class solution else return min class solution public...