Bad man
Bad man
全部文章
分类
归档
标签
去牛客网
登录
/
注册
Bad man的博客
全部文章
(共125篇)
题解 | #牛的奶量统计II#
知识点:二叉树,深度优先搜索,前缀和要在树中找到一个路径和为targetSum的路径,一个可行的方法是对于每个节点都去计算以该节点为起点的路径和,去比较所有的路径是否为目标和。不难发现,这样做多了很多重复的计算,我们可以使用Set集合存储我们从根节点开始到每一个节点走过的路径和,举个例子来说,如果根...
2023-08-11
0
386
题解 | #牛群左侧视图#
知识点:二叉树,层序遍历基本思想还是使用队列来实现树的层序遍历,在进行层序遍历时需要确定当前层的元素个数,依次从队列中出队,同时需要将子节点入队,作为下一层的元素。题目要求得到二叉树的左视图,也就是每一层的第一个元素值,我们只需要正常地进行层序遍历,同时取出每层第一个拿到的节点作为左视图能看到的元素...
2023-08-11
0
369
题解 | #牛群平均重量#
知识点:二叉树,层序遍历 基本思想还是使用队列来实现树的层序遍历,在进行层序遍历时需要确定当前层的元素个数,依次从队列中出队,同时需要将子节点入队,作为下一层的元素。题目要求得到二叉树每一层元素的平均值,也就决定了该题目最好使用层序遍历来解决,对于每一层的元素来讲,我们在队列中得到当前层的所有元素,...
2023-08-11
0
363
题解 | #牛群的最短路径#
知识点:二叉树,层序遍历 题目要求找到从根节点到叶子节点的最短距离,也就是距离根节点最近的叶子节点,我们可以从根节点开始进行广度优先搜索,同时,每遍历到一层时进行计数,记录下来当前走过的层数,直至找到一个叶子节点,此时该叶子节点就是距离根节点最近的叶子节点,返回当前层数即为答案。 Java题解如下 ...
2023-08-11
0
350
题解 | #牛群编号的回文顺序#
知识点:双指针 要判断回文顺序,可以利用双指针,将两侧的指针向中间移动,同时判定两个指针所指链表值是否相同,若不相同则可以直接返回false,对于单向链表来说,我们无法使用右指针来向中间移动,故可以使用List集合,将链表值首先存入集合中,利用集合下标来进行双指针的移动。 Java题解如下 impo...
2023-08-10
0
363
题解 | #牛群售价预测#
知识点:贪心我们要想获得最大的利润,就需要找到当前最小的元素,再用当前位置的元素减去最小的元素值,即为利润,要想利润最大,就需要保证我们的成本保持在最小值,通过不断更新最小成本,来尝试获取每个位置能得到的最大利润。Java题解如下 import java.util.*; public class...
2023-08-10
0
411
题解 | #牛群的可视高度#
知识点:贪心顺序遍历数组,不停寻找最大值,当找到最大值,表示在左视图时可以看到该元素,计数加一,遍历整个数组,最终计数即为左视图可以看到的元素个数。Java题解如下 import java.util.*; public class Solution { /** * 代码中的类名...
2023-08-10
0
314
题解 | #分品种#
知识点:贪心题目要求每组之间的字母不能相同,也就是要将相同的字母放在同一组中,所以我们要找到每一个字母所能达到的最远距离,从第一个字母开始,我们需要遍历至第一个字母出现的最远的位置,同时,若遍历过程中出现其他字母,则也需要将其相同的字母包含其中,也就是要选择出现的字母中所能达到的最远距离。当达到最远...
2023-08-10
0
377
题解 | #特工的密码#
知识点:双指针题目要求找到子序列,也就是不要求连续,可以使用双指针的思想,两个指针分别指向两个字符串中未遍历到的位置,我们可以对t字符串进行遍历,如遇到s字符串中的第一个未遍历到的字符,则将i指针右移一位,当i指针遍历了整个s字符串,说明含有子序列,即可返回true。Java题解如下 import ...
2023-08-09
0
329
题解 | #牛群密码 - 有效回文#
知识点:双指针,字符串题目有两个条件,一个是出现的字符种类不能超过k个,我们可以使用Set集合存储所有字符,若Set大小没有超过k个,则可以进行后续的判断。对于删除一个字符后的回文串判定,我们可以遍历整个字符串,假设每个位置都有可能被删除,在判断回文串的过程中,我们使用双指针来判定左右两侧的字符是否...
2023-08-09
0
316
首页
上一页
1
2
3
4
5
6
7
8
9
10
下一页
末页