二叉树的层次遍历要先掌握
public void levelIterator(TreeNode root){
if (root==null) {
return ;
}
LinkedList<TreeNode> queue=new LinkedList<TreeNode>();
TreeNode cur=null;
queue.add(root);
while (!queue.isEmpty()) {
cur=queue.poll();
System.out.println(cur.val+"-------");
if (cur.left!=null) {
queue.add(cur.left);
}
if (cur.right!=null) {
queue.add(cur.right);
}
}
}
有一些题目是相似的比如:求二叉树的深度和是否为平衡二叉树;是否是相同的二叉树,是否为对称的二叉树。这些在写递归时侯需要考虑的是根节点,而其他的结点则不需要考虑。
https://segmentfault.com/a/1190000003532763#articleHeader5
网友评论