二叉树基础算法--判断两棵二叉树是否相同
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了二叉树基础算法--判断两棵二叉树是否相同相关的知识,希望对你有一定的参考价值。
https://leetcode.com/problems/same-tree/
1 /** 2 * Definition for a binary tree node. 3 * struct TreeNode { 4 * int val; 5 * TreeNode *left; 6 * TreeNode *right; 7 * TreeNode(int x) : val(x), left(NULL), right(NULL) {} 8 * }; 9 */ 10 class Solution { 11 public: 12 bool isSameTree(TreeNode* p, TreeNode* q) { 13 //均为空相同 14 if (p == NULL && q == NULL) 15 return true; 16 17 //其一为空不同 18 if (p == NULL || q == NULL) 19 return false; 20 21 //值不相等不同 22 if (p->val != q->val) 23 return false; 24 25 //比较左右子树是否相同 26 return isSameTree(p->left, q->left) && isSameTree(p->right, q->right); 27 } 28 };
以上是关于二叉树基础算法--判断两棵二叉树是否相同的主要内容,如果未能解决你的问题,请参考以下文章
LeetCode 100. Same Tree 判断两棵二叉树是否相等