872. Leaf-Similar Trees
题目大意:给你两颗二叉树,问你他们从左往右的所有叶子节点是否一样
解题思路:直接递归遍历,所有的叶子
class Solution {
private:
void dfs(TreeNode* root,vector<int> &vt)
{
if(root==NULL) return ;
if(root->left!=NULL)
dfs(root->left,vt);
if(root->right!=NULL)
dfs(root->right,vt);
if(root->left==NULL && root->right==NULL)
vt.push_back(root->val);
return ;
}
public:
bool leafSimilar(TreeNode* root1, TreeNode* root2) {
vector<int> vt1;
vector<int> vt2;
dfs(root1,vt1);
dfs(root2,vt2);
if(vt1.size()!=vt2.size()) return false;
for(int i=0;i<vt1.size();i++)
{
if(vt1[i]!=vt2[i]) return false;
}
return true;
}
};