前缀和
Saulty
这个作者很懒,什么都没留下…
展开
-
LeetCode 209. 长度最小的子数组
LeetCode 209. 长度最小的子数组题目题解代码 题目 题解 滑动窗口 前缀和递增 与 LeetCode 713. 乘积小于K的子数组 相似 代码 class Solution { public: int minSubArrayLen(int target, vector<int>& nums) { int n=nums.size(); if(n==0) return 0; int l=0; int原创 2021-08-11 14:21:57 · 60 阅读 · 0 评论 -
LeetCode 713. 乘积小于K的子数组
LeetCode 713. 乘积小于K的子数组题目题解代码 题目 题解 不固定的滑动窗口,由l,r确定窗口的大小 本题有这样一个规律:窗口内每加入一个数,如果乘积仍然小于k,则满足条件的子数组数量 += 窗口内元素数量 前缀积递增 与 LeetCode 209. 长度最小的子数组 相似 代码 class Solution { public: int numSubarrayProductLessThanK(vector<int>& nums, int k) {原创 2021-08-11 14:21:31 · 72 阅读 · 0 评论 -
LeetCode 560. 和为K的子数组
LeetCode 560. 和为K的子数组题目题解代码 题目 题解 前缀和 两种不同叠加顺序 前缀和优化,利用哈希表 若[j…i]区间和为k,则sum[j-1]=sum[i]-k 每当计算到位置i的前缀和,查找前面是否有sum[i]-k的前缀和 https://leetcode-cn.com/problems/subarray-sum-equals-k/solution/he-wei-kde-zi-shu-zu-by-leetcode-solution/ 代码 // class Solution原创 2021-08-05 12:59:58 · 58 阅读 · 0 评论 -
LeetCode 238. 除自身以外数组的乘积
LeetCode 238. 除自身以外数组的乘积题目题解代码 题目 题解 用除法 考虑除0问题以及多个0的问题 除自身以外数组的乘积=左边的积*右边的积 先把对应的左边的积和右边的积分别存在两个数组中,直接取用即可 为了减小空间复杂度,直接用结果数组存储左边的积,右边的积在计算结果的过程中直接乘上去 代码 // class Solution { // public: // vector<int> productExceptSelf(vector<int>& nu原创 2021-08-05 12:59:38 · 37 阅读 · 0 评论