今天第一题:111
用的labuladong的BFS套路 不得不说 很好用
代码需要打一遍才知道小细节哪里不对
while要小写,int i不要漏写int
BFS大家一起在迈步,用int step,while(!queue.isEmpty),int sz = queue.size(), for(int i=0;i<sz;i++)
226:翻转二叉树
这是labuladong的二叉树手把手系列第一题,简单题,用的是递归,套路简单
不明白为什么return 的是 root?
然后发现public TreeNode invertTree(TreeNode root)哈啊哈哈,但是为什么是root呢,不是翻转吗,不应该输出的是整个树吗
- 填充每个节点的下一个右侧节点指针
这道题我知道要注意不同父亲的问题,但是东哥用了两个函数就完美的解决了这个问题,明白函数的定义是什么
Node node1,Node node2这个不要忘记申明类型,if(node1null ||node2null) {return;}
114:函数展开为链表
这里比较迷的是最后的,A=B我明白是A指向B,但是为什么while里面需要写呢,如果不写while会怎么样呢,现在记住就可以
110:判断是否为平衡二叉树
这道题是左神的二叉树套路做的,套路很明确,需要注意他的写法非常的需要细心,我就因为每一个函数空格,和包含关系搞不清楚写错
向左树要信息,和右树要信息,要高度,高度就是左右树高度中大的那个+1,
平衡二叉树的关键点在于左右的高度差不能大于1
错误: 非法字符: '\uff1b’解决方法
public void与public static void区别
public void定义的是普通的方法,而public static void 定义的是静态的方法。
普通的方法需要new对象去调用,而静态的方法可以直接用类名去调用。
116