![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法基础
SpicySource
这个作者很懒,什么都没留下…
展开
-
对称二叉树-LeetCode 101
题目题目内容很好理解,判断一棵树是镜像对称。思路根据题目,我们可以将问题等价为以下问题:对于一对左右节点:左右节点的值是否相等?左节点的右节点与右节点的左节点是否相等?左节点的左节点与右节点的右节点是否相等?如果对于所有对称位置的节点,都满足上述三个条件,那么这棵树即为对称二叉树。了解了等价问题后,剩下只需要深度优先遍历整棵树就好了,dfs分别传入一组对称位置节点(left, right)class Solution { public boolean isS原创 2021-05-29 11:41:56 · 89 阅读 · 0 评论 -
二叉树的前中后序遍历-递归实现Java
定义二叉树节点类public class TreeNode { //key为二叉树的节点的值 int key; TreeNode left; TreeNode right; public TreeNode(int key) { this.key = key; left = null; right = null; }}构建测试用二叉树其实前,中,后序的区别在于遍历根(父)节点与其左右节点的顺序不同,前序原创 2020-06-18 03:54:05 · 252 阅读 · 0 评论 -
二叉树的分层遍历
二叉树的分层遍历二叉树的分层遍历, 换行打印。下面的代码将解释如何实现换行打印。分层遍历使用队列queue,按层次将节点推入队列,并在弹出时将节点的左右节点推入队列。换行打印使用for循环,定义n=队列长度,遍历该行的所有节点后,跳出for循环,打印换行,再重新赋值队列长度n,重新进入下一行的for循环。//定义Treenodeclass Treenode{ int val;...原创 2019-06-10 10:33:00 · 1768 阅读 · 1 评论