zoukankan      html  css  js  c++  java
  • 100. Same Tree

    100. Same Tree

    题目

     Given two binary trees, write a function to check if they are the same or not.
    
    Two binary trees are considered the same if they are structurally identical and the nodes have the same value.
    
    Example 1:
    
    Input:     1         1
              /        / 
             2   3     2   3
    
            [1,2,3],   [1,2,3]
    
    Output: true
    
    Example 2:
    
    Input:     1         1
              /           
             2             2
    
            [1,2],     [1,null,2]
    
    Output: false
    
    Example 3:
    
    Input:     1         1
              /        / 
             2   1     1   2
    
            [1,2,1],   [1,1,2]
    
    Output: false
    
    
    

    解析

    class Solution_100 {
    public:
    	bool isSameTree(TreeNode *p, TreeNode *q) {
    
    		if (!p&&!q)
    		{
    			return true;
    		}
    		if (!p&&q)
    		{
    			return false;
    		}
    		if (p&&!q)
    		{
    			return false;
    		}
    		if (p->val!=q->val)
    		{
    			return false;
    		}
    
    		return isSameTree(p->left, q->left) && isSameTree(p->right, q->right);
    	}
    
    	//非递归实现时:有NULL节点也入栈或者队列
    	// ref:https://leetcode.com/problems/same-tree/discuss/32683
    };
    
    

    100. Same Tree

  • 相关阅读:
    2021.1.20 学习总结
    2021.1.19 学习总结
    2021.1.18 学习总结
    学习总结13
    学习总结12
    学习总结11
    学习总结10
    ASP.NET网站开发步骤
    学习总结9
    阅读笔记4
  • 原文地址:https://www.cnblogs.com/ranjiewen/p/8275586.html
Copyright © 2011-2022 走看看