zoukankan      html  css  js  c++  java
  • 872. Leaf-Similar Trees

    按序记录每棵树叶子节点。比较是否一致。

    前序,中序,后序都可以。

    Consider all the leaves of a binary tree.  From left to right order, the values of those leaves form a leaf value sequence.

    For example, in the given tree above, the leaf value sequence is (6, 7, 4, 9, 8).

    Two binary trees are considered leaf-similar if their leaf value sequence is the same.

    Return true if and only if the two given trees with head nodes root1 and root2 are leaf-similar.

    Note:

    • Both of the given trees will have between 1 and 100 nodes.
    /**
     * Definition for a binary tree node.
     * struct TreeNode {
     *     int val;
     *     TreeNode *left;
     *     TreeNode *right;
     *     TreeNode(int x) : val(x), left(NULL), right(NULL) {}
     * };
     */
    class Solution {
    public:
        bool leafSimilar(TreeNode* root1, TreeNode* root2) {
            vector<int> res1;
            vector<int> res2;
            preorder(root1,res1);
            preorder(root2,res2);
            if(res1.size()!=res2.size())
                return false;
            for(int i=0;i<res1.size();++i){
                if(res1[i]!=res2[i])
                    return false;
            }
            return true;
        }
        void preorder(TreeNode* root,vector<int>& res){
            if(root==NULL)
                return;
            if(root->left==NULL && root->right==NULL){
                res.push_back(root->val);
                return;
            }
            preorder(root->left,res);
            preorder(root->right,res);
        }
    };

     ac后看了solution, 

            if(res1.size()!=res2.size())
                return false;
            for(int i=0;i<res1.size();++i){
                if(res1[i]!=res2[i])
                    return false;
            }
            return true;

    可以简写为

    return res1==res2;
  • 相关阅读:
    vue工程项目中配置测试环境及生产环境线上地址
    复杂表格的拖拉拽,及行列拖拽
    前端骨架屏的资料
    关于vue中的重复key的警告问题
    git 约定规范
    git 博客
    关于svg的一些事
    vue单文件组件2(webpack打包)
    vue单文件组件1(webpack打包)
    vue-resource
  • 原文地址:https://www.cnblogs.com/learning-c/p/9787656.html
Copyright © 2011-2022 走看看