在开发后端接口时,对于一些非对外开放的接口,我们总想做得简单一些,不去过多考虑类似DDOS之类的恶意攻击,但当上线之后却发现,时常出现一些奇奇怪...
有这么一类场景,需要频繁对数组nums的区间[i,j]中的每个元素做加减法。比如:先对区间[a, b]的每个元素值加3,再对[a+1, b-1]...
Leetcode 23. 合并K个升序链表 解法1. 使用优先级队列 第一步:定义一个最小堆(Java使用PriorityQueue即可) 第二...
虽然用递归来解答反转链表的题型会使得程序的调用多了一层隐式压栈、消耗额外的内存空间,但此类题型用递归来解答确实会使整个代码看起来分外优雅,不得不...
leetcode 76. 最小覆盖子串 用滑动窗口来解答此题,有几个关键点: 一、确认整个遍历操作中我们需要用到的变量 left、right 就...
二叉搜索树性质: 左子树所有节点都小于根节点,右子树所有节点都大于根节点 LeetCode 700. 二叉搜索树中的搜索 根据其性质,可很快写出...
LRUCache 全称为 Least Recently Used Cache ,用Java实现的话,可以很简单地用LinkedHashMap来实...
题意给得很明确,要我们按顺时针遍历输出整个矩阵的元素,那我们就顺着题意,看一下遍历过程中会需要用到哪些边界条件。 可以看到,从左到右遍历时,我们...
leetcode 380. 常数时间插入、删除和获取随机元素 题目要求我们实现一个数据结构来支持插入、删除和获取随机元素的时间复杂度都在O(1...