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

月嫂网站建设方案网站商城建站

月嫂网站建设方案,网站商城建站,个人博客网站下载,广告推广 精准引流这道题我用的是暴力法,当然也是不断的提交不断发现问题改出来的,比如我之前是算到和大于目标值就break,其实不行因为后面还可以有负数,我把break删了。后面和为目标之后就答案1然后break然后下一次遍历,测试用例中就出…

 这道题我用的是暴力法,当然也是不断的提交不断发现问题改出来的,比如我之前是算到和大于目标值就break,其实不行因为后面还可以有负数,我把break删了。后面和为目标之后就答案+1然后break然后下一次遍历,测试用例中就出现了合理的子串后面还有一个0,于是我改成直到遍历完最后一个才结束循环;所以我把两个break都删了,我以为会超时,没想到还是过了,以下是我的代码:

class Solution {public int subarraySum(int[] nums, int k) {int ans =0;int n = nums.length;int sum=0;for(int i=0;i<n;i++){sum =0;for(int j=i;j<n;j++){sum+=nums[j];if(sum == k){ans++;}}}return ans;}
}

就是最简单的暴力法,用i,j两个指针作为子串的起点和终点,然后把子串的所有数的和加起来,如何等于k,ans++。这里就需要注意我前面提到的无论sum=k还是sum>k都不能break,要遍历到最后一个数自动结束,外层循环每次sum归0。

题解的方法一和我的是一样的暴力枚举,方法二是用HashMap来存前缀和,key是前缀和,value值这个前缀和出现的次数,pre[i]表示前i个数的和,pre[j-1]表示前j-1个数的和,当pre[i]-pre[j-1]=k时,我们就找到了这个子串的起始位置j,所以我们只需要一遍遍历即可(算出pre[i]放入hashmap,如果有这个key,就value+1),同时我们看hashmap中有没有pre[i]-k这个key,如果有答案就加上这个key的value,以下时哈希优化的代码:

public class Solution {public int subarraySum(int[] nums, int k) {int count = 0, pre = 0;HashMap < Integer, Integer > mp = new HashMap < > ();mp.put(0, 1);for (int i = 0; i < nums.length; i++) {pre += nums[i];if (mp.containsKey(pre - k)) {count += mp.get(pre - k);}mp.put(pre, mp.getOrDefault(pre, 0) + 1);}return count;}
}
http://www.yayakq.cn/news/303437/

相关文章:

  • 海外域名购买网站优化公司大家好
  • 互联网网站开发合同南京进出口贸易公司排名
  • 宁波易通建设网站网站如何做微信推广
  • 什么软件可以做网站动图网站做多少外链
  • 做网站要在阿里云上买几个贡献家居网站建设方案
  • 网站建设 网站制作 网站设计中国施工总承包100强
  • 自己做的网站如何赚钱吗虚拟主机WordPress建站
  • 中国建设银行辽宁分行网站wordpress仿微信公众号模板
  • 域名注册网站的域名哪里来的高端网站建设询问磐石网络
  • 云梦做网站萧山建设信用网站
  • 长春市做网站推广湖南做网站kaodezhu
  • 公司网站建设价格低设计网站公司名称
  • 购物网站建设成本什么是专业网站
  • 网页设计的风格可分为两大类网站优化怎么样做
  • 外贸视频网站seo简单速排名软件
  • 有什么网站帮做邀请函设计的延庆网站建设优化seo
  • 网站目录爬行silverlight做的网站
  • 网站空间到期怎么办开发什么网站好
  • 湖北省建设厅官方网站证书查询网站建设常用代码
  • 站长音效平面设计培训线上
  • 网站制作开发技术石家庄坤鹏企业管理咨询有限公司
  • 巴中移动网站建设天津市工程信息网
  • 哪个网站好平面设计作品欣赏
  • 东莞好的网站建设效果电商的网站有几个
  • 微网站管理平台莱州市双语网站
  • 网站开发外包合同范本wordPress如何把菜单加入导航
  • 做二手车网站需要什么手续费网站建设的英语
  • 江门cms模板建站瓜子网网站建设策划书
  • 无锡市政建设集团有限公司网站wordpress页面构建
  • 怎么进行网站关键词优化小程序跳转到网站