自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

原创 leetcode 895 最大频率栈

题目描述: 实现 FreqStack,模拟类似栈的数据结构的操作的一个类。 FreqStack 有两个函数: push(int x),将整数 x 推入栈中。 pop(),它移除并返回栈中出现最频繁的元素。 如果最频繁的元素不只一个,则移除并返回最接近栈顶的元素。 示例: 输入: [“FreqStack”,“push”,“push”,“push”,“push”,“push”,“push”,“pop”,“pop”,“pop”,“pop”], [[],[5],[7],[5],[7],[4],[5],[],[],[

2021-03-03 22:11:39 200 1

原创 leetcode 312 戳气球(动态规划)

题目描述: 有 n 个气球,编号为0 到 n - 1,每个气球上都标有一个数字,这些数字存在数组 nums 中。 现在要求你戳破所有的气球。戳破第 i 个气球,你可以获得 nums[i - 1] * nums[i] * nums[i + 1] 枚硬币。 这里的 i - 1 和 i + 1 代表和 i 相邻的两个气球的序号。如果 i - 1或 i + 1 超出了数组的边界,那么就当它是一个数字为 1 的气球。 求所能获得硬币的最大数量。 示例 1: 输入:nums = [3,1,5,8] 输出:167 解释:

2021-02-25 14:03:39 104

原创 leetcode 201 数字范围按位与

题目描述: 给定范围 [m, n],其中 0 <= m <= n <= 2147483647,返回此范围内所有数字的按位与(包含 m, n 两端点)。 示例 1: 输入: [5,7] 输出: 4 示例 2: 输入: [0,1] 输出: 0 来源:力扣(LeetCode) 链接:题目链接https://leetcode-cn.com/problems/bitwise-and-of-numbers-range 实现代码如下: 解释都在代码中了 class Solution { publ

2021-02-24 22:04:34 94

原创 (leetcode 992)k个不同整数的子数组

给定一个正整数数组 A,如果 A 的某个子数组中不同整数的个数恰好为 K,则称 A 的这个连续、不一定独立的子数组为好子数组。 (例如,[1,2,3,1,2] 中有 3 个不同的整数:1,2,以及 3。) 返回 A 中好子数组的数目。 输入:A = [1,2,1,2,3], K = 2 输出:7 解释:恰好由 2 个不同整数组成的子数组:[1,2], [2,1], [1,2], [2,3], [1,2,1], [2,1,2], [1,2,1,2]. 来源:力扣(LeetCode) 链接:https://le

2021-02-09 17:44:27 103

原创 课程表 (leetcode)

现在你总共有 n 门课需要选,记为 0 到 n-1。 在选修某些课程之前需要一些先修课程。 例如,想要学习课程 0 ,你需要先完成课程 1 ,我们用一个匹配来表示他们: [0,1] 给定课程总量以及它们的先决条件,返回你为了学完所有课程所安排的学习顺序。 可能会有多个正确的顺序,你只要返回一种就可以了。如果不可能完成所有课程,返回一个空数组。 示例 1: 输入: 2, [[1,0]] 输出: [0,1] 解释: 总共有 2 门课程。要学习课程 1,你需要先完成课程 0。因此,正确的课程顺序为 [0,1] 。

2021-02-05 16:51:26 667

原创 最小体力消耗路径

**题意:**给定一个整形二维数组,求从左上角到右下角的最小路径。这里的路径指的是所有路径中相邻元素差的最小值,而对于单条路径代表的结果值指的是该条路径上相邻元素之间差的最大值。 输入:heights = [[1,2,2],[3,8,2],[5,3,5]] 输出:2 解释:路径 [1,3,5,3,5] 连续格子的差值绝对值最大为 2 。 这条路径比路径 [1,2,2,2,5] 更优,因为另一条路径差值最大值为 3 。 来源:力扣(LeetCode) 链接:leetcodehttps://leetcode-c

2021-01-29 18:44:00 295 1

原创 寻找两个正序数组的中位数

题目描述: 给定两个大小为 m 和 n 的正序(从小到大)数组 nums1 和 nums2。请你找出并返回这两个正序数组的中位数。 要求:你能设计一个时间复杂度为 O(log (m+n)) 的算法解决此问题吗? 来源:力扣(LeetCode) 链接:题目链接 解答方法:由于题目要求在log时间内找出中位数,显然先合并为一个数组然后找中位数,或者使用双指针进行两个数组的扫描,查找中位数的时间均是不符合要求的。一般要求在log时间内完成多半要联系二分法。那么对于该题怎么使用二分法呢? 采用前面的方式我们一次只能

2021-01-27 19:43:06 63

原创 leetcode 50 Pow(x,n)

leetcode 50 Pow(x,n)循环乘幂运算快速幂运算 循环乘幂运算 实现 pow(x, n) ,即计算 x 的 n 次幂函数。 示例 1: 输入: 2.00000, 10 输出: 1024.00000 示例 2: 输入: 2.10000, 3 输出: 9.26100 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/powx-n 解答: 常用的方法是循环累乘。代码如下: public double myPow(double x, int n)

2021-01-20 22:35:20 84

转载 2020-11-15

学习kmp很好的网址:不怕就点我

2020-11-15 13:16:27 56

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除