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

网站建设与开发开题报告网站开发打开世界之窗默认内核

网站建设与开发开题报告,网站开发打开世界之窗默认内核,下载百度地图2022最新版官方,遵化建设局网站目录前言问题介绍解决方案代码编写java语言版本c语言版本c语言版本思考感悟写在最后前言 当前所有算法都使用测试用例运行过,但是不保证100%的测试用例,如果存在问题务必联系批评指正~ 在此感谢左大神让我对算法有了新的感悟认识! 问题介绍 …

目录

  • 前言
  • 问题介绍
  • 解决方案
  • 代码编写
    • java语言版本
    • c语言版本
    • c++语言版本
  • 思考感悟
  • 写在最后

前言

当前所有算法都使用测试用例运行过,但是不保证100%的测试用例,如果存在问题务必联系批评指正~

在此感谢左大神让我对算法有了新的感悟认识!

问题介绍

原问题
给定正数组,求正数组中累加和为给定值的最长子数组长度
如:
arr = {1, 3, 2, 5, 4, 7, 8}, k = 10
结果为:3,数组{3,2,5} 为最长子数组

解决方案

原问题
解法一(空间O(n)):
参考:

https://swzhao.blog.csdn.net/article/details/126942975

该解法可以适配非正数无序数组,但是空间复杂度为O(n)
解法二(空间O(1)):
1、申请两个变量left,right,作为滑动窗口的两端,申请一个变量sum作为滑动窗口的和,实时计算
2、在left和right滑动的过程中,sum作为和,如果 sum < k ,说明和小了,right++扩大窗口
3、反之说明和大了,left++减小窗口即可,因为正数数组,因此和sum一定会减少

代码编写

java语言版本

原问题:

    public static int maxLen2K(int[] arr, int k) {if (arr == null || arr.length == 0) {return 0;}// 两个游标从开始游走left<= rightint left = 0, right = 0;// sum为了实时保存left到right的和int sum = arr[0];// 结果int len = 0;while (left <= right && right <= arr.length) {if (sum == k) {len = Math.max(len, right - left + 1);// 这里right尽可能的远right++;// 更新sumsum += right > arr.length ? 0 : arr[right];}else if (sum < k) {// 小了,需要拓展right++;sum += right >= arr.length ? 0 : arr[right];}else {// 大了,需要缩小sum -= arr[left];left++;}}return len;}public static void main(String[] args) {int[] ints = {1, 3, 2, 5, 4, 7, 8};int[] ints1 = {-3, -1, -4, 6, 3, -3, 5, 6, 0};int[] ints2 = {0, 1, 1, 0, 0, 0, 0, 1, 0};int[] ints3 = {3, -2, -4, 0, 6};//System.out.println(myGetMaxLenth(ints, 8));//System.out.println(myGetMaxLengthFromPG(ints1));//System.out.println(myGetMaxLengthFrom01(ints2));System.out.println(maxLen2K(ints, 10));}

c语言版本

正在学习中

c++语言版本

正在学习中

思考感悟

其实参考里面的解法我认为是这种类型问题的统一解法,这篇文章主要介绍的是滑动窗口的玩法,有兴趣可以看一下,还是比较简单的。

写在最后

方案和代码仅提供学习和思考使用,切勿随意滥用!如有错误和不合理的地方,务必批评指正~
如果需要git源码可邮件给2260755767@qq.com
再次感谢左大神对我算法的指点迷津!

http://www.yayakq.cn/news/977138/

相关文章:

  • 广州模板建站哪家好营销网站的优势是什么意思
  • 网站建设的发展历史与新方向企业网站icp
  • 上海商城网站建设好站站网站建设
  • 系网站的开发和建设毕业设计wordpress 漏洞 扫描
  • 房地产网站怎么建设安徽六安地图
  • 网站开发协议合作个人主页写什么内容
  • 广州正规网站建设哪家好网络优化内容有哪些
  • 域名到期对网站的影响wordpress4.7添加菜单
  • 给传销做网站什么罪做垂直行业网站利润分析
  • 北京手机网站开发做不锈钢百度网站哪个比较好
  • 安徽城乡建设部网站首页设计建筑办公室
  • 手机版网站用什么开发的漂亮网页模板
  • 园区做网站个人养老保险怎么买最划算
  • 网站怎么更改关键词新建的网站必须要备案吗
  • 那曲做网站西安学校部门定制网站建设公司
  • 镇江牛吧企业网站建设与推广公司青岛网站定制
  • 广州市住房城乡建设局网站云南高风险地区名单最新
  • 医院网站建设的规划方案外发加工什么最好
  • 如何请人创建一个网站新浪微博登录网页版
  • 电话营销网站推广徐州网站制作需要多少钱
  • 门户网站的建设费用html简单网站开发案例
  • 网站受攻击wordpress标题怎么
  • 萧山做网站wordpress外部链接
  • 保定 网站制作望野作品
  • 网站设计电商首页宣传推广的形式有哪些
  • 个人作品网站js网站源码下载
  • dede怎么做视频网站宝贝做网站
  • 做网站要注册商标第几类廊坊关键词优化服务
  • 网站建设的指导书网站备案名称规定
  • 广州高端企业网站建设湖南长沙网版公司