
leetcode
Emiya_Zero
渣渣程序猿
展开
-
LeetCode每日打卡 210. 课程表 II
210. 课程表 II今天这道打卡涉及到有向图的问题,题的难点有两个,一个是如何构建一个图,第二个是必须要把前置课程上完才能够学习后续课程。首先解决问题一如何构建一个图:题目中的输入流:[[1,0],[2,0],[3,1],[3,2]],我们根据前置课程构建图0123可以使用HashMap保存图的映射关系 Map<Integer,List<Integer>> alls = new HashMap<>(); for (int[] item:prerequis原创 2020-05-17 15:43:39 · 262 阅读 · 0 评论 -
LeetCode每日打卡验证二叉搜索树--中序遍历Or递归
98. 验证二叉搜索树????,其实之前做过类似的题,但是一开始的思路还是没想到中序遍历,只是想到递归判断当前节点是否大于等于最大值或者小于等于最小值,针对于左子树,那么最大值应该是当前节点值,右子树那么最小值应该是当前值。根据这个思路就可以开始撸代码了。 public boolean isValidBST(TreeNode root) { //用long的原因是居然存在测试用例用Int的最大值...原创 2020-05-05 11:22:53 · 181 阅读 · 0 评论 -
优先队列+滑动窗口---5402. 绝对差不超过限制的最长连续子数组
5402. 绝对差不超过限制的最长连续子数组昨晚刚看CS-Notes的容器部分知道了Java还有个PriorityQueue(优先队列),没想到今天 的leetCode周赛就果断出了相关题,依旧喜闻乐见不会做。解题方法:定义左右指针指向当前滑动窗口的两端int left = 0;int right = 0;然后定义两个优先队列,一个单调递增,一个单调递减以获取当前窗口的最大最小值 ...原创 2020-05-03 12:45:04 · 209 阅读 · 0 评论 -
Leetcode 1162. 地图分析 200. 岛屿数量
今天LeetCode的每日打卡是题200 岛屿数量岛屿数量首先分析下岛屿数量的题意。给你一个由 ‘1’(陆地)和 ‘0’(水)组成的的二维网格,请你计算网格中岛屿的数量。岛屿总是被水包围,并且每座岛屿只能由水平方向和/或竖直方向上相邻的陆地连接形成。来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/number-of-islands...原创 2020-04-20 23:23:59 · 408 阅读 · 0 评论 -
LeetCode LCP 09. 最小跳跃次数
题目地址:LeetCode LCP 09. 最小跳跃次数首先理解题意:有N个小球从[0]到[n-1]排序,然后每个小球都可以跳跃到当前位置记录的值上,同时可以任意的跳跃到左边,当然0的时候只能向右跳跃。例如:jump = [2, 5, 1, 1, 1, 1] ,当小球在0的位置上时,只能够向右跳2位即达到jump[2]上当到达a[2]的时候就可以左右横跳了,当然只能向右一位。这个时候我们可以...原创 2020-04-19 23:35:59 · 1054 阅读 · 0 评论 -
设计链表
设计链表今天学习了leetcode的链表卡片,其中涉及到了707题 设计链表题目要求:设计链表的实现。您可以选择使用单链表或双链表。单链表中的节点应该具有两个属性:val 和 next。val 是当前节点的值,next 是指向下一个节点的指针/引用。如果要使用双向链表,则还需要一个属性 prev 以指示链表中的上一个节点。假设链表中的所有节点都是 0-index 的。在链表类中实现这些功...原创 2020-01-17 12:59:48 · 508 阅读 · 1 评论 -
不同的二叉搜索树 II
不同的二叉搜索树 II今天做了下leetcode的题,又是喜闻乐见想不出思路,看了解答就豁然开朗。leetcode题目链接给定一个整数 n,生成所有由 1 … n 为节点所组成的二叉搜索树。解题思路就是,根据二叉树的特性,如果一个数比当前节点小,那么就将数放到当前数的左节点,如果数比当前数大就放到当前节点的右节点。而1 … n 为节点组成一个二叉搜索树。那么当当前节点为i的时候,存在...原创 2020-01-15 21:39:58 · 269 阅读 · 0 评论