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

安卓门户网站开发wordpress 很卡

安卓门户网站开发,wordpress 很卡,wordpress 图片中文名,什么网站可以接单做还是要把自己做题的思路写出来的,但是结果可能还是得去观摩一下题解,无论是大佬写的题解还是leetcode官方写的题解,看完题解后再去反思才能有收获,即使下次遇见一样的题不见得能写出来,但有思路比没思路更重要。 今天写…

还是要把自己做题的思路写出来的,但是结果可能还是得去观摩一下题解,无论是大佬写的题解还是leetcode官方写的题解,看完题解后再去反思才能有收获,即使下次遇见一样的题不见得能写出来,但有思路比没思路更重要。
今天写的一题中等题虽然说只能想到前半部分,后半部分打死想不出来,看题解也不是太能理解关于模运算的移相和转换,但是如果只是暴力的话可以过609个样例也已经差不多可以过85%的样例了。
今天就来看看如此令人头疼的题目

对于该题我想了很久的解题思路,所以在一开始我就排除了基于(n*n)的双for循环,但除了这个我也实在想不到另一种优化的方法去避免使用循环

1、使用01数组去维护这个整数数组nums
例如我们测试的值nums为[1,3,6,9],modulo为3,k为0,我们可以将该数组转化为[0,1,1,1],然后我们便可以开始遍历左边界和右边界,window(窗口)大小最小为modulo(3)可以扩充,后得到子数组[0,1,1,1][1,1,1]
2、通过循环遍历使得子数组的cnt达到cnt%modulo=k记为一个趣味子数组

我们观察到这个时间复杂度,很简单便能判断我们的循环遍历是会超时的,第二点的优化则成为了我们的重点对象

通过wxyz大佬的题解对于我来说能稍微理解一下如何通过数学方法对代码进行优化处理,用空间复杂度去换时间复杂度
2845. 统计趣味子数组的数目 - 力扣(LeetCode)

class Solution {public long countInterestingSubarrays(List<Integer> nums, int modulo, int k) {int n = nums.size();// prefix[i+1] 表示子数组 [0..i] 中取模为k的元素数量int[] prefix = new int[n + 1];for (int i = 1; i <= n; i++) {prefix[i] = prefix[i - 1] + (nums.get(i - 1) % modulo == k ? 1 : 0);}// 使用哈希表记录 (余数, 出现次数)Map<Integer, Integer> countMap = new HashMap<>();countMap.put(0, 1); // 初始化long ans = 0; // 最终结果for (int i = 1; i <= n; i++) {// 计算当前前缀和对 modulo 取余的结果int currentMod = prefix[i] % modulo;//System.out.println("currentMod:"+currentMod+"prefix[i]:"+prefix[i]);// 在哈希表中查找余数 (currentMod - k) % moduloint target = (currentMod - k + modulo) % modulo; // 处理负数的情况// 累加哈希表中 target 对应的出现次数ans += countMap.getOrDefault(target, 0);//System.out.println("countMap.getOrDefault(target, 0):"+countMap.getOrDefault(target, 0));//System.out.println("target:"+target+"ans:"+ans);// 用当前余数更新哈希表countMap.put(currentMod, countMap.getOrDefault(currentMod, 0) + 1);}return ans;}}
据我的理解就是将上述的01数组转换成了cnt数组[0,1,1,1]->[0,0,1,2,3],为什么会多一个0呢,这是因为我们需要通过prefix[r]-prefix[l-1]去维护数组两个(3-0)%mod=0等同于拥有两个子数组[0,1,1,1]和[1,1,1]

而当我们接触到哈希表+前缀和的题目的时候,好像都需要去初始化哈希表使得countMap.put(0, 1),为了处理从数组开头 [0, j] 的子数组,它代表「前缀和为 0」这个状态在一开始就出现过一次,是一个「虚拟前缀」,确保后续运算能完整覆盖所有子数组情况。

而这里的数学转换说实话很难想到,使用数学转换的方式去枚举右,维护左。


文章转载自:

http://nGu4zMaq.qqzdr.cn
http://uisVgFY4.qqzdr.cn
http://WYuOrTi7.qqzdr.cn
http://kha4WU1h.qqzdr.cn
http://OUMvISxa.qqzdr.cn
http://g9ARY7WB.qqzdr.cn
http://tao1EK5S.qqzdr.cn
http://IE1JzisQ.qqzdr.cn
http://72NH10rV.qqzdr.cn
http://NTsZUo9K.qqzdr.cn
http://CEnur1VR.qqzdr.cn
http://wmrbNhfT.qqzdr.cn
http://KtW9In4V.qqzdr.cn
http://KsHSTEje.qqzdr.cn
http://FC7Q7NDI.qqzdr.cn
http://2CTNqGtF.qqzdr.cn
http://Fesg23a7.qqzdr.cn
http://jywYhI18.qqzdr.cn
http://aWrA7NJ9.qqzdr.cn
http://2hP7dgj6.qqzdr.cn
http://mIhPF95V.qqzdr.cn
http://YtMQ9Y94.qqzdr.cn
http://MHFYOOR3.qqzdr.cn
http://RrmCI3bO.qqzdr.cn
http://ke9cDERJ.qqzdr.cn
http://X25RgKIS.qqzdr.cn
http://iwFQY4bN.qqzdr.cn
http://cE7uwD9a.qqzdr.cn
http://DtgTO39d.qqzdr.cn
http://tZJq9fHe.qqzdr.cn
http://www.dtcms.com/wzjs/665824.html

相关文章:

  • 多语言网站开发设计速加网零件加工网
  • 南昌p2p网站专业建设校园网站建设教程
  • 如何入侵网站后台密码建设专业网站的利弊
  • 做网站需要空间可以进入任何网站的浏览器
  • 企业做网站需要多少钱wordpress极慢
  • 帮忙做宴会的网站辽宁东方建设工程有限公司网站
  • 装饰行业模板网站网站建设个人接单
  • 基层建设网站是不是停办了wordpress做微信推广
  • 代网站备案费用吗wordpress建站多少钱
  • 没有网站可以做的广告联盟哪里找网站建设的兼职
  • dw个人网站制作模板如何仿制wordpress主题
  • 淘宝上的网站建设江西省网站建设
  • 一个专门做特产的网站传奇做网站
  • 如何开发一个微网站微信怎么做淘客网站
  • 桂林北站时刻表计算机网站建设维护的目的
  • 旧宫网站建设企业微信小程序免费制作平台
  • 如何破解网站后台密码隆昌住房和城乡建设官方网站
  • 商丘网站推广渠道阿克苏网站开发
  • 重庆建新建设工程有限公司网站做招聘网站怎么运作
  • 网站空间 哪个公司好无锡网站制作中心
  • 学习做网站教程企业网站的推广方法
  • 微博营销网站互联网营销师培训机构
  • 哪里有做设备的怎么做自己网站产品seo
  • 上饶做网站哪家好网上怎么自己审核营业执照
  • wordpress 分页404南宁seo推广外包
  • 郑州制作网站电话133惠州的服装网站建设
  • 有口碑的武进网站建设app设计开发团队
  • 山西省住房和城乡建设部网站微信企业号可以做微网站吗
  • 深圳大型网站建设服务公司网站如何做会员登录页面
  • 网站建设视觉设计重庆公司黄页