LeetCode 872. 叶子相似的树

匿名 (未验证) 提交于 2019-12-03 00:43:02

最近刷LeetCode题目的一些思路,题目信息

叶值序列

(6, 7, 4, 9, 8)

叶相似的

root1root2truefalse

提示:

  • 1100

找到各自树的叶值队列,然后进行比较

1 寻找叶值队列

 private void getTreeChild(List<Integer> list, TreeNode root){     if(root.left == null && root.right == null){         list.add(root.val);     } else {         if(root.left != null){             getTreeChild(list,root.left);         }         if(root.right != null){             getTreeChild(list,root.right);         }     }  }

2:主方法体,将两个树的叶值队列都找到,然后挨个比较

 public boolean leafSimilar(TreeNode root1, TreeNode root2) {     boolean retBoolean = false;     List<Integer> leftRootList = new ArrayList<>();     List<Integer> rightRootList = new ArrayList<>();     getTreeChild(leftRootList,root1);     getTreeChild(rightRootList,root2);     if(leftRootList.size() == rightRootList.size()){         return false;     } else for(int i=0; i<leftRootList.size(); i++){         if(leftRootList.get(i) != rightRootList.get(i)){             retBoolean = false;             break;         }      }     return retBoolean; }

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!