执子一白
执子一白
全部文章
题解
归档
标签
去牛客网
登录
/
注册
执子一白的博客
全部文章
/ 题解
(共22篇)
把二叉树打印成多行
这边借助两个数据结构实现,HashMap 记录每个节点层 Queue 进行层序遍历最后返回即可 import java.util.*; /* public class TreeNode { int val = 0; TreeNode left = null; TreeNo...
2020-12-03
1
639
二叉树中是否存在节点和为指定值的路径
import java.util.*; /* * public class TreeNode { * int val = 0; * TreeNode left = null; * TreeNode right = null; * } */ public class Sol...
2020-12-03
1
698
判断二叉树是否对称
整体这道题还是在考 树的前中后序遍历的递归实现和非递归实现而镜像其实就 是 把根抛去 左右 变成 右左 即可 即 递归调用节点顺序,入栈节点顺序其他就是比较了,用一个全局变量来存储是否为镜像 import java.util.*; /* * public class TreeNode { * ...
2020-12-03
1
603
判断一颗树是否为二叉搜索树及完全二叉树
递归套路,主要是分解信息和合并左右子树需要提供的信息。当前节点是完全二叉树条件:左子树为完全二叉树 右子树也为完全二叉树 且 左树为空时右树必须为空当前节点是二叉搜索树条件:左右子树都为搜索树 且 左树根节点值及其根节点右节点都小于当前节点。右树同理上代码: import java.util.*; ...
2020-12-03
4
1058
平衡二叉树
简单的一道递归,很典型的题了,首先明白什么是平衡二叉树。平衡树(Balance Tree,BT) 指的是,任意节点的子树的高度差都小于等于1。那么对于节点 X 其左右子树是平衡二叉树且高度小于等于 1 即可 public class Solution { public boolean I...
2020-12-02
1
625
二叉树最大深度
整体来说很简单的递归套路,首先我先假设 我可以获得当前 X 节点 左右 子树的最大深度那么 当前 X 节点的最大深度 即为 左右子树 最大深度中 最大值+1那么求整棵树的最大深度即 X=root直接上递归函数即可 import java.util.*; /* * public class Tre...
2020-12-02
1
705
环形链表的约瑟夫环
根据题意,正常构造链表满足条件删除即可别投机取巧,自己手打一遍熟悉熟悉 import java.util.*; public class Solution { /** * * @param n int整型 * @param m int整型 *...
2020-12-01
22
1476
重排链表
两种思路第一种:借助 外部容器 HashMap 但是对于这道题的时间复杂度过不了。第二种:使用快慢指针找到链表中点,断开,翻转后半部分链表形成两个链表,最后交叉合并两个链表即可 /** * Definition for singly-linked list. * class ListNode {...
2020-12-01
1
773
删除有序链表中重复的元素
整体来说链表题都可以通过多个指针来解,或者借助其他的数据结构这边采用双指针的思路 import java.util.*; /* * public class ListNode { * int val; * ListNode next = null; * } */ public ...
2020-12-01
1
660
链表的奇偶重排
这道题奇偶链表,想不超时,循环中不能有运算操作。这边采用分离链表的思路,定义四个指针,分别指向 奇数链表 头尾 偶数链表 头尾最后拼接即可 import java.util.*; /* * public class ListNode { * int val; * ListNode n...
2020-12-01
1
784
首页
上一页
1
2
3
下一页
末页