leetcode : subtree of another tree
2017-08-29 23:14
357 查看
题:给出两棵二叉树,判断一颗是不是另一颗的子树
代码:
注意点:
①每次往stringsream里塞入结点value时要用空格隔开,否则若输入[12],[2]会返回true。
②null结点也要输入stringstream,否则若输入[4,1,2,0],[4,1,2]会返回true。
③string.find(str)!=string.npos才能判定str是否在string中。
代码:
/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */ #include <sstream> using namespace std; class Solution { private: stringstream ss1,ss2; void preorderedTree(TreeNode* node,stringstream& s){ if(node==nullptr)s<<" n"; else{ s<<' '<<(node->val); preorderedTree(node->left,s); preorderedTree(node->right,s); } } public: bool isSubtree(TreeNode* s, TreeNode* t) { preorderedTree(s,ss1); ss1<<' e'; preorderedTree(t,ss2); return ss1.str().find(ss2.str())!=ss1.str().npos; } };
注意点:
①每次往stringsream里塞入结点value时要用空格隔开,否则若输入[12],[2]会返回true。
②null结点也要输入stringstream,否则若输入[4,1,2,0],[4,1,2]会返回true。
③string.find(str)!=string.npos才能判定str是否在string中。
相关文章推荐
- LeetCode Subtree of Another Tree
- [LeetCode] Subtree of Another Tree 另一个树的子树
- leetcode专题—Subtree of Another Tree
- LeetCode - 572 - Subtree of Another Tree
- leetcode 572 Subtree of Another Tree
- LeetCode 572: Subtree of Another Tree
- LeetCode: Subtree of Another Tree
- LeetCode@Tree_572_Subtree_of_Another_Tree
- 【Leetcode-easy-572】Subtree of Another Tree
- LeetCode Subtree of Another Tree
- [LeetCode] Subtree of Another Tree
- leetcode[Subtree of Another Tree]//待整理多种解法
- leetcode 572 Subtree of Another Tree
- LeetCode 572 Subtree of Another Tree
- leetcode(572):Subtree of Another Tree
- 【LeetCode】Subtree of Another Tree 解题报告
- Leetcode算法学习日志-572 Subtree of Another Tree
- LeetCode——Subtree of Another
- LeetCode.572 Subtree of Another Tree(树的序列化和子串的匹配)
- Subtree of Another Tree