[LeetCode] Symmetric Tree

来源:互联网 发布:淘宝试用成功怎么领取 编辑:程序博客网 时间:2024/06/05 11:21
题目:Given a binary tree, check whether it is a mirror of itself (ie, symmetric around its center).

判断二叉树是否对称。

思路:中序遍历,判断是否对称。

注意:为空的节点是否在树的深度内。对于非叶子节点的空子结点,需要在中序遍历中记录。


class Solution {public:    vector<int> v;    bool isSymmetric(TreeNode *root) {        inorderTravers(root);        for(int i =0,j=v.size()-1;i<j;i++,j--)        {            if(v[i]!=v[j])                return false;        }        return true;    }    void inorderTravers(TreeNode *root)    {        if(root!=NULL)        {            if(root->left==NULL && root->right==NULL)            {                v.push_back(root->val);                return;            }            inorderTravers(root->left);            v.push_back(root->val);            inorderTravers(root->right);        }        else            v.push_back(-1000000);    }};



0 0
原创粉丝点击