LeetCode 965. 单值二叉树
生活随笔
收集整理的這篇文章主要介紹了
LeetCode 965. 单值二叉树
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
文章目錄
- 1. 題目
- 2. 解題
- 2.1 遞歸
- 2.2 循環
1. 題目
如果二叉樹每個節點都具有相同的值,那么該二叉樹就是單值二叉樹。
只有給定的樹是單值二叉樹時,才返回 true;否則返回 false。
2. 解題
2.1 遞歸
class Solution { public:bool isUnivalTree(TreeNode* root) {if(!root)return true;bool flag = true;int val = root->val;judge(root,flag,val);return flag;}void judge(TreeNode* root, bool &flag, int &val){if(!root || flag == false)return;if(root->val != val){flag = false;return;}judge(root->left,flag,val);judge(root->right,flag,val);} };2.2 循環
class Solution { public:bool isUnivalTree(TreeNode* root) {if(!root)return true;int rootval = root->val;stack<TreeNode*> stk;TreeNode *cur;while(root || !stk.empty()){while(root){stk.push(root);root = root->left;}root = stk.top();if(root->val != rootval)return false;stk.pop();root = root->right;}return true;} };總結
以上是生活随笔為你收集整理的LeetCode 965. 单值二叉树的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python--从入门到实践--chap
- 下一篇: LeetCode 239. 滑动窗口最大