算法基础
SpicySource
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
对称二叉树-LeetCode 101
题目 题目内容很好理解,判断一棵树是镜像对称。 思路 根据题目,我们可以将问题等价为以下问题: 对于一对左右节点: 左右节点的值是否相等? 左节点的右节点与右节点的左节点是否相等? 左节点的左节点与右节点的右节点是否相等? 如果对于所有对称位置的节点,都满足上述三个条件,那么这棵树即为对称二叉树。 了解了等价问题后,剩下只需要深度优先遍历整棵树就好了,dfs分别传入一组对称位置节点(left, right) class Solution { public boolean isS原创 2021-05-29 11:41:56 · 157 阅读 · 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 · 314 阅读 · 0 评论 -
二叉树的分层遍历
二叉树的分层遍历 二叉树的分层遍历, 换行打印。 下面的代码将解释如何实现换行打印。 分层遍历使用队列queue,按层次将节点推入队列,并在弹出时将节点的左右节点推入队列。 换行打印使用for循环,定义n=队列长度,遍历该行的所有节点后,跳出for循环,打印换行,再重新赋值队列长度n,重新进入下一行的for循环。 //定义Treenode class Treenode{ int val;...原创 2019-06-10 10:33:00 · 1874 阅读 · 1 评论
分享