@@ -42,7 +42,9 @@ public List<TreeNode> findDuplicateSubtrees(TreeNode root) {
4242 }
4343
4444 private String postorder (TreeNode curr , HashMap <String , Integer > map , List <TreeNode > res ) {
45- if (curr == null ) return "#" ;
45+ if (curr == null ) {
46+ return "#" ;
47+ }
4648 String serial = curr .val + "," + postorder (curr .left , map , res ) + "," + postorder (curr .right , map , res );
4749 if (map .getOrDefault (serial , 0 ) == 1 ) {
4850 res .add (curr );
@@ -63,7 +65,9 @@ public class MyOriginalSolution {
6365 */
6466 public List <TreeNode > findDuplicateSubtrees (TreeNode root ) {
6567 List <TreeNode > result = new ArrayList <>();
66- if (root == null ) return result ;
68+ if (root == null ) {
69+ return result ;
70+ }
6771 Map <TreeNode , List <TreeNode >> map = new HashMap <>();
6872 Queue <TreeNode > oldQueue = new LinkedList <>();
6973 Queue <TreeNode > newQueue = new LinkedList <>();
@@ -113,21 +117,37 @@ private void findDuplicateSubtrees(TreeNode treeNode, Queue<TreeNode> newQueue,
113117 }
114118
115119 private boolean isSubtree (TreeNode s , TreeNode t ) {
116- if (s == null && t == null ) return true ;
120+ if (s == null && t == null ) {
121+ return true ;
122+ }
117123 boolean isSubTree = false ;
118- if (s != null && t != null && s .val == t .val ) isSubTree = isSameTree (s , t );
119- if (isSubTree ) return true ;
124+ if (s != null && t != null && s .val == t .val ) {
125+ isSubTree = isSameTree (s , t );
126+ }
127+ if (isSubTree ) {
128+ return true ;
129+ }
120130 boolean isSubTreeLeft = false ;
121- if (s .left != null ) isSubTreeLeft = isSubtree (s .left , t );
122- if (isSubTreeLeft ) return true ;
131+ if (s .left != null ) {
132+ isSubTreeLeft = isSubtree (s .left , t );
133+ }
134+ if (isSubTreeLeft ) {
135+ return true ;
136+ }
123137 boolean isSubTreeRight = false ;
124- if (s .right != null ) isSubTreeRight = isSubtree (s .right , t );
125- if (isSubTreeRight ) return true ;
138+ if (s .right != null ) {
139+ isSubTreeRight = isSubtree (s .right , t );
140+ }
141+ if (isSubTreeRight ) {
142+ return true ;
143+ }
126144 return false ;
127145 }
128146
129147 private boolean isSameTree (TreeNode p , TreeNode q ) {
130- if (p == null || q == null ) return p == q ;
148+ if (p == null || q == null ) {
149+ return p == q ;
150+ }
131151 return p .val == q .val && isSameTree (p .left , q .left ) && isSameTree (p .right , q .right );
132152 }
133153 }
0 commit comments