zoukankan      html  css  js  c++  java
  • LeetCode:same_tree题解

    一、     题目:

      给定两个二叉树,编写一个函数来检查它们是否相等或为空树。假设两个二叉树被觉得是相等的,那么它们在结构上是同样的,而且随意节点具有同样的值。

    二、     分析

       非常easy的题目,仅仅要我们遍历下这棵树不即可了,递归搞定须要注意的是对于空结点的推断,easy忽略

     

    /**
     * Definition for binary tree
     * struct TreeNode {
     *     int val;
     *     TreeNode *left;
     *     TreeNode *right;
     *     TreeNode(int x) : val(x), left(NULL), right(NULL) {}
     * };
     */
    class Solution {
    public:
        bool isSameTree(TreeNode *p, TreeNode *q) {
            if(p==NULL&&q==NULL)
            	return true;
    		if(p==NULL&&q!=NULL||p!=NULL&&q==NULL) 
    			return false;
    		if(p->val!=q->val)
    			return false;
            return isSameTree(p->left,q->left)&&isSameTree(p->right,q->right);
        }
    };
    
    
    或:
    /**
     * Definition for binary tree
     * struct TreeNode {
     *     int val;
     *     TreeNode *left;
     *     TreeNode *right;
     *     TreeNode(int x) : val(x), left(NULL), right(NULL) {}
     * };
     */
    class Solution {
    public:
        bool isSameTree(TreeNode *p, TreeNode *q) {
            if(!p&&!q)
            	return true;
    		if(!p&&q||p&&!q||p->val!=q->val) 
    			return false;
            return isSameTree(p->left,q->left)&&isSameTree(p->right,q->right);
        }
    };
    

  • 相关阅读:
    ⑦linux pidstat
    ⑥linux mpstat
    ⑤linux 系统负载
    ④linux 进程优先级
    ③linux 进程管理
    ②linux 监控进程状态
    ①linux 进程概述于生命周期
    ④linux 自动挂载
    ③linux Gdisk
    ②linux fdisk
  • 原文地址:https://www.cnblogs.com/mfrbuaa/p/4485977.html
Copyright © 2011-2022 走看看