链接:day 15 第六章二叉树
226. 翻转二叉树
链接:代码随想录
/*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode() : val(0), left(nullptr), right(nullptr) {}* TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}* TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}* };*/ //普通递归 class Solution { public:TreeNode* invertTree(TreeNode* root) {return Dfs(root);}TreeNode* Dfs(TreeNode *root){if(root!=nullptr){TreeNode *temp=root->left;root->left=Dfs(root->right);root->right=Dfs(temp);return root;}return nullptr;} };
101. 对称二叉树
链接:代码随想录
/*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode() : val(0), left(nullptr), right(nullptr) {}* TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}* TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}* };*/ class Solution {//试下递归 public:bool isSymmetric(TreeNode* root) {return helper(root->left,root->right);}bool helper(TreeNode *root1,TreeNode *root2){if(root1==nullptr && root2==nullptr){return true;}if(root1!=nullptr && root2!=nullptr){if(root1->val==root2->val){return helper(root1->left,root2->right)&&helper(root1->right,root2->left);}}return false;}};
100. 相同的树
链接:https://leetcode.cn/problems/same-tree/
/*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode() : val(0), left(nullptr), right(nullptr) {}* TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}* TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}* };*/ class Solution { /*https://programmercarl.com/0101.%E5%AF%B9%E7%A7%B0%E4%BA%8C%E5%8F%89%E6%A0%91.html#%E6%80%BB%E7%BB%93 代码随想录对称的树相关 */ public:bool isSameTree(TreeNode* p, TreeNode* q) {return helper(p,q);}bool helper(TreeNode *p,TreeNode *q){if(p==nullptr && q==nullptr){return true;}else if(p!=nullptr && q==nullptr){return false;}else if(p==nullptr && q!=nullptr){return false;}else{if(p->val==q->val){return helper(p->left,q->left)&&helper(p->right,q->right);}}return false;} };
下一篇:洛阳的别称