码迷,mamicode.com
首页 > 其他好文 > 详细

【树】572. 另一个树的子树

时间:2020-05-03 15:01:16      阅读:50      评论:0      收藏:0      [点我收藏+]

标签:width   iss   col   index   turn   alt   equals   color   amp   

题目:

技术图片

 

 

 

解法:

 

方法一:先序遍历

 1 class Solution {
 2     public boolean isSubtree(TreeNode s, TreeNode t) {
 3         String tree1 = preOrder(s, true);
 4         String tree2 = preOrder(t, true);
 5         return tree1.indexOf(tree2) >= 0;
 6     }
 7 
 8     private String preOrder(TreeNode node, boolean left) {
 9         if (node == null) {
10             if (left) return "lnull";
11             else return "rnull";
12         }
13 
14         return "#" + node.val + " " + preOrder(node.left, true) + " " + preOrder(node.right, false);
15     }
16 }

 

方法二:比较节点

 1 class Solution {
 2     public boolean isSubtree(TreeNode s, TreeNode t) {
 3         return traverse(s, t);
 4     }
 5 
 6     private boolean traverse(TreeNode s, TreeNode t) {
 7         return s != null && (equals(s, t) || traverse(s.left, t) || traverse(s.right, t));
 8     }
 9 
10     // 比较两棵树是否相等
11     private boolean equals(TreeNode t1, TreeNode t2) {
12         if (t1 == null && t2 == null) return true;
13         else if (t1 == null || t2 == null) return false;
14 
15         return t1.val == t2.val && equals(t1.left, t2.left) && equals(t1.right, t2.right);
16     }
17 }

 

【树】572. 另一个树的子树

标签:width   iss   col   index   turn   alt   equals   color   amp   

原文地址:https://www.cnblogs.com/ocpc/p/12821743.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!