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

受欢迎的网站建设平台自己搭建一个网站

受欢迎的网站建设平台,自己搭建一个网站,wordpress 每日替换,seo专员是什么职业1.题目介绍 给定一个整数数组 nums &#xff0c;请你找出一个具有最大和的连续子数组&#xff08;子数组最少包含一个元素&#xff09;&#xff0c;返回其最大和。 子数组是数组中的一个连续部分。 1 < nums.length < 105-104 < nums[i] < 104 2.解决思路 要求出…

1.题目介绍

        给定一个整数数组 nums ,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。

子数组是数组中的一个连续部分。

  • 1 <= nums.length <= 105
  • -104 <= nums[i] <= 104

2.解决思路

        要求出一个数组中和最大的子数组的和,这通常有很多种解法,比如暴力遍历、分治、动态规划等,我这里采用动态规划去解决,具体思路如下:既然要求出和最大的值,那么肯定要有一个变量f1用来记录最大的值,至于如何求出最大的值是多少,我们可以采用循环比较的方法不断取 i 和i-1 之间的最大值,并用临时值记录f2下来,如果数组从前向后不断增大,那么显而易见这个临时值f2表示的就是当前位置 i 的前缀和,也就是当前的最大和的数组,并不断将这个最大值赋值给f1。若遍历过程中出现了一个负数,中间值会变小。最大值f1通过比较仍取相对大的原值,也就是f1记录的永远是最大和子数组。然后中间值继续向后遍历,同样的逻辑,比f1更大则赋值给f1,比f1小则继续向后遍历,最终f1记录的就是和最大的子数组的和。

3..步骤讲解

        1.定义maxSum记录最大数组和,currentSum记录遍历过程中的临时值

        2.遍历数组

        3.不断比较当前遍历到的值与临时值+当前遍历值的大小,取最大值

        4.临时值与最大值进行比较,保持maxSum永远记录最大值

        5.返回结果

4.代码展示      

public int maxSubArray(int[] nums) {//记录最大值int maxSum = nums[0];//记录中间值int currentSum = nums[0];for (int i = 1; i < nums.length; i++) {//比较临时值增大还是减小currentSum = Math.max(nums[i], currentSum + nums[i]);//永远保持记录最大值maxSum = Math.max(maxSum, currentSum);}return maxSum;
}

5.执行结果

在leetcode测试用例中平均耗时1ms

内存分布56.11MB

http://www.dtcms.com/wzjs/483042.html

相关文章:

  • 四川哪家网站推广做的好什么是指数基金
  • 做的网站如何全屏代码百度投诉电话人工服务总部
  • jsp网站开发简单代码seo销售
  • 顺德定制网站建设seoul怎么读
  • 休闲小零食网站开发方案网络营销主要做些什么工作
  • 共青团员建设网站百度小说搜索排行榜
  • 政府网站建设发展思路关键词优化推广公司排名
  • 网站seo排名优化软件深圳seo公司助力网络营销飞跃
  • 恩做网站动态页面好合肥seo排名扣费
  • 网站开发是用什么语言长沙市云网站建设
  • 企业网站 asp.net全网网站快速排名推广软件
  • 如何管理手机网站首页最新搜索关键词
  • 网页开发用什么编程语言专业搜索引擎seo服务商
  • 简述网站开发基本流程杭州搜索引擎优化公司
  • 海珠做网站公司正规百度推广
  • 义乌网站建设多少钱软文广告图片
  • 建网站网站新能源汽车公司
  • 做文交所的都有哪些网站5118站长工具箱
  • b2c商城网站哪个行业最需要推广
  • 乐陵网站开发小吃培训机构排名前十
  • 男女做啊免费视频网站搜索引擎优化实训
  • 接视频做的网网站百度seo 优化
  • 网站规划与建设课程设计临沂百度推广多少钱
  • 龙岗网站制作市场客源引流推广
  • 泰安市最新消息今天百度seo价格查询系统
  • 如何查外贸网站外链品牌策略的7种类型
  • 关于网站建设管理工作的报告近10天的时事新闻
  • 智能网站建设系统百度关键词排名怎么靠前
  • 政府网站的作用和意义高清的网站制作
  • 大型集团公司网站建设方案网推是干什么的