dfhdfgjd
dfhdfgjd
全部文章
题解
未归档(2)
解题方法(1)
归档
标签
去牛客网
登录
/
注册
LonelyPlanet
人生如逆旅
全部文章
/ 题解
(共39篇)
330. 按要求补齐数组
给定一个已排序的正整数数组 nums,和一个正整数 n 。从 [1, n] 区间内选取任意个数字补充到 nums 中,使得 [1, n] 区间内的任何数字都可以用 nums 中某几个数字的和来表示。请输出满足上述要求的最少需要补充的数字个数。 示例 1: 输入: nums = [1,3], n = ...
数组
刷题
2020-05-06
0
535
135. 分发糖果
老师想给孩子们分发糖果,有 N 个孩子站成了一条直线,老师会根据每个孩子的表现,预先给他们评分。 你需要按照以下要求,帮助老师给这些孩子分发糖果: 每个孩子至少分配到 1 个糖果。相邻的孩子中,评分高的孩子必须获得更多的糖果。那么这样下来,老师至少需要准备多少颗糖果呢? class Solution...
数组
刷题
2020-05-06
0
604
287. 寻找重复数
给定一个包含 n + 1 个整数的数组 nums*,其数字都在 1 到 *n 之间(包括 1 和 n),可知至少存在一个重复的整数。假设只有一个重复的整数,找出这个重复的数。 解法 class Solution { public: int findDuplicate(vector<in...
数组
刷题
环
2020-05-06
0
671
128. 最长连续序列
给定一个未排序的整数数组,找出最长连续序列的长度。 要求算法的时间复杂度为 O(n)。 解法 class Solution { public: int longestConsecutive(vector<int>& nums) { int res = 0; ...
数组
刷题
多次回顾
map
2020-05-06
0
640
334. 递增的三元子序列
给定一个未排序的数组,判断这个数组中是否存在长度为 3 的递增子序列。 数学表达式如下: 如果存在这样的 i, j, k, 且满足 0 ≤ i < j < k ≤ n-1,使得 arr[i] < arr[j] < arr[k] ,返回 true ; 否则返回 false 。...
数组
刷题
2020-05-06
0
665
42. 接雨水
给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。 上面是由数组 [0,1,0,2,1,0,1,3,2,1,2,1] 表示的高度图,在这种情况下,可以接 6 个单位的雨水(蓝色部分表示雨水)。 感谢 Marcos 贡献此图。 解法一:Brute-Fo...
数组
双指针
刷题
动态规划
2020-05-06
0
732
11. 盛最多水的容器
给你 n 个非负整数 a1,a2,...,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0)。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。 说明:你不能倾斜容器,且 n 的值至少为 2。 ...
数组
双指针
刷题
2020-05-05
0
591
309. 最佳买卖股票时机含冷冻期
给定一个整数数组,其中第 i 个元素代表了第 i 天的股票价格 。 设计一个算法计算出最大利润。在满足以下约束条件下,你可以尽可能地完成更多的交易(多次买卖一支股票): 你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。 卖出股票后,你无法在第二天买入股票 (即冷冻期为 1 天)。 ...
状态机
数组
刷题
2020-05-05
0
2495
188. 买卖股票的最佳时机IV
给定一个数组,它的第 i 个元素是一支给定的股票在第 i 天的价格。 设计一个算法来计算你所能获取的最大利润。你最多可以完成 k 笔交易。 注意: 你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。 解法 和123. 买卖股票的最佳时机III一样的思路。 class Solution {...
数组
刷题
动态规划
2020-05-05
0
2388
123. 买卖股票的最佳时机III
给定一个数组,它的第 i 个元素是一支给定的股票在第 i 天的价格。 设计一个算法来计算你所能获取的最大利润。你最多可以完成 两笔 交易。 注意: 你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。 思路 构建数组dp[k][i],代表在第i天的第k笔交易时,我们获取到的最大收益。 在第...
数组
多次回顾
刷题
动态规划
2020-05-05
0
2412
首页
上一页
1
2
3
4
下一页
末页