LeetCode98 驗證二叉搜尋樹

2022-07-11 19:33:11 字數 830 閱讀 5044

最討厭寫資料結構了。但是不得不寫

這題意思就是確定乙個二叉排序樹合不合法,我儲存了左子樹和柚子樹的最大最小值然後判斷一下

五連wa哭了

/**

* definition for a binary tree node.

* struct treenode

* };

*/class solution

bool judgetree(treenode *root, long long *minval, long long *maxval)

if(root->right)

*minval = min(*minval, root->val);

*maxval = max(*maxval, root->val);

printf("curnum = %d\n curmin = %d\n curmax = %d\n", root->val,*minval,*maxval);

return true;

}bool isvalidbst(treenode* root)

};

冰雨教的新解法

儲存乙個l和r

我的感覺就是 從下往上做約束很難 但是從上往下約束很容易

/**

* definition for a binary tree node.

* struct treenode

* };

*/class solution

bool isvalidbst(treenode* root)

};

leetcode 98 驗證二叉搜尋樹

給定乙個二叉樹,判斷其是否是乙個有效的二叉搜尋樹。乙個二叉搜尋樹具有如下特徵 示例 1 輸入 1 3 輸出 true 示例 2 輸入 1 4 3 6 輸出 false 解釋 輸入為 5,1,4,null,null,3,6 根節點的值為 5 但是其右子節點值為 4 關鍵資訊 1二叉搜尋樹的中序遍歷是遞...

leetcode 98 驗證二叉搜尋樹

給定乙個二叉樹,判斷其是否是乙個有效的二叉搜尋樹。乙個二叉搜尋樹具有如下特徵 示例 1 輸入 2 1 3 輸出 true示例 2 輸入 5 1 4 3 6 輸出 false 解釋 輸入為 5,1,4,null,null,3,6 根節點的值為 5 但是其右子節點值為 4 解題思路 中序遍歷遞增,每次只...

leetcode 98 驗證二叉搜尋樹

給定乙個二叉樹,判斷其是否是乙個有效的二叉搜尋樹。乙個二叉搜尋樹具有如下特徵 示例 1 輸入 2 1 3 輸出 true示例 2 輸入 5 1 4 3 6 輸出 false 解釋 輸入為 5,1,4,null,null,3,6 根節點的值為 5 但是其右子節點值為 4 如果對二叉搜尋樹不夠了解,可能...