当前位置: 首页 > news >正文

html商城网站源码中国建筑官网超高层

html商城网站源码,中国建筑官网超高层,企业网站的设计思路范文,外链价格文章目录 209.长度最小的子数组题目描述暴力滑动窗口 209.长度最小的子数组 题目描述 给定一个含有 n 个正整数的数组和一个正整数 target 。 找出该数组中满足其总和大于等于 target 的长度最小的 连续子数组 [numsl, numsl1, …, numsr-1, numsr] ,并返回其长度…

文章目录

  • 209.长度最小的子数组
    • 题目描述
    • 暴力
    • 滑动窗口

209.长度最小的子数组

题目描述

给定一个含有 n 个正整数的数组和一个正整数 target 。

找出该数组中满足其总和大于等于 target 的长度最小的 连续子数组 [numsl, numsl+1, …, numsr-1, numsr] ,并返回其长度。如果不存在符合条件的子数组,返回 0 。

示例 1:

输入:target = 7, nums = [2,3,1,2,4,3]
输出:2
解释:子数组 [4,3] 是该条件下的长度最小的子数组。

示例 2:

输入:target = 4, nums = [1,4,4]
输出:1

示例 3:

输入:target = 11, nums = [1,1,1,1,1,1,1,1]
输出:0

示例 4:

输入:target = 15, nums = [5,1,3,5,10,7,4,9,2,8]
输出:2

提示:

  • 1 <= target <= 109
  • 1 <= nums.length <= 105
  • 1 <= nums[i] <= 105

进阶:

如果你已经实现 O(n) 时间复杂度的解法, 请尝试设计一个 O(n log(n)) 时间复杂度的解法。

暴力

后面力扣更新了数据,暴力解法已经超时了。

class Solution {
public:// minSubArrayLen函数接收一个正整数target和一个正整数数组nums// 函数返回数组中总和至少为target的最短连续子数组的长度int minSubArrayLen(int target, vector<int>& nums) {int min = INT_MAX; // 初始化最小长度为INT_MAX,用于比较和记录最小值// 外层循环遍历数组,i指向当前考虑的子数组的起始位置for(int i = 0; i < nums.size(); i++) {long long sum = 0; // 初始化当前子数组的总和为0int length = 0; // 初始化当前子数组的长度为0// 内层循环尝试扩展子数组,j指向当前考虑的子数组的结束位置for(int j = i; j < nums.size(); j++) {sum += nums[j]; // 将nums[j]加到当前子数组的总和length++; // 当前子数组长度加1// 检查当前子数组的总和是否已经达到或超过了targetif(sum >= target && length < min) {min = length; // 如果是,更新最小长度break; // 并退出当前内层循环,因为我们已经找到以i开始的最短子数组}}}// 如果min仍然是INT_MAX,说明没有找到符合条件的子数组if(min == INT_MAX) return 0;// 否则返回记录的最小长度return min;}
};

滑动窗口

class Solution {
public:// minSubArrayLen函数接收一个正整数target和一个正整数数组nums// 函数返回数组中总和至少为target的最短连续子数组的长度int minSubArrayLen(int target, vector<int>& nums) {int result = INT_MAX; // 用于存储最短子数组长度的变量,初始化为INT_MAXint i = 0; // 滑动窗口的起始位置long long sum = 0; // 用于计算滑动窗口内数值之和的变量// 外循环,j表示滑动窗口的结束位置for(int j = 0; j < nums.size(); j++) {sum += nums[j]; // 将当前元素加到sum中// 内循环,若当前子数组和大于等于target,尝试收缩滑动窗口的起始位置while(sum >= target) {int length = j - i + 1; // 当前滑动窗口的长度result = min(result, length); // 更新找到的最短子数组长度sum -= nums[i++]; // 从sum中减去滑动窗口的起始元素,并将起始位置向右移动}}// 如果result仍然是INT_MAX,意味着没有找到符合条件的子数组,返回0if(result == INT_MAX) return 0;// 否则返回找到的最短子数组长度return result;}
};
http://www.yayakq.cn/news/745312/

相关文章:

  • 上海做网站的的公司2345浏览器网页版入口中文版
  • app开发流程无锡网站优化价格
  • 石家庄电商网站建设企业培训方案制定
  • 网站推广的途径和推广要点几款免费流程图制作软件
  • 怎么在自己的网站上传视频微博推广价格表
  • 北京做家政网站有哪些平台网站开发检测用户微信号
  • 做企业网站的流程wordpress侧边浮动
  • 网站建设花钱少萧山做网站的公司
  • 域名备案个人网站名称赣州网站建设有哪些
  • 成都网站登记备案查询网站开发html的题
  • 昆明网站建设哪家合适做彩票网站犯法不
  • 毕业设计做网站还是系统做的比较好的法律实务培训网站
  • 淄博桓台学校网站建设方案wordpress登录注册界面
  • 网站怎么备案学视频剪辑去哪里学比较好
  • 办公室设计方案安徽网站建设优化推广
  • 网站建设与管理实践报告总结厦门十大装修公司排名榜
  • 株洲网站制作建设有什么网站可以做宣传
  • 做站用什么网站程序转化率的网站设计
  • 怎么自己做单页网站重庆seo优化公司哪家好
  • 如何建设网站制作平台小程序代理能赚钱吗
  • 做网站php软件中文wordpress视频主题
  • 做电影网站需要空间吗武进网站建设市场
  • 学习电子商务网站建设与管理的收获6微信公众号怎么做微网站
  • 网站初期建设方案深圳网站小程序设计开发
  • 找人做网站应该注意哪些一站式网站手机端怎么做
  • 网站制作详情简易软件开发工具
  • 做网页和网站一样吗服务器维护工程师
  • 免费域名试用注册网站商务网站建设中的必备功能
  • 集团网站建设服务公司wordpress 内存溢出
  • 陕西网站建设排名wordpress大学添加背景音乐