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

杭州做网站的网络公司有哪些临沂网站建设哪家最好

杭州做网站的网络公司有哪些,临沂网站建设哪家最好,营销型网站建设思路,小程序店铺怎么弄每日算法学习记录 - 250531 今天完成了两道 LeetCode 题目,主要用到了前缀和的思想。记录如下: 1. 2559. 统计范围内的元音字符串数 题目 思路 前缀和 解题过程 我们可以先预处理出一个前缀和数组 nums,其中 nums[i] 表示 words 数组中从下…

每日算法学习记录 - 250531

今天完成了两道 LeetCode 题目,主要用到了前缀和的思想。记录如下:


1. 2559. 统计范围内的元音字符串数

题目

Problem 2559 Screenshot

思路

前缀和

解题过程

我们可以先预处理出一个前缀和数组 nums,其中 nums[i] 表示 words 数组中从下标 0 到下标 i(包含 i)的字符串里,以元音字母开头且以元音字母结尾的字符串的总个数。

预处理完成后,对于每个查询 [left, right]

  • 如果 left == 0,则区间 [0, right] 内满足条件的字符串数量就是 nums[right]
  • 如果 left > 0,则区间 [left, right] 内满足条件的字符串数量为 nums[right] - nums[left - 1]

复杂度

  • mwords 数组的长度,nqueries 数组的长度。
  • 时间复杂度: O ( m + n ) O(m + n) O(m+n)
    • 预处理前缀和数组 nums:遍历 words 数组一次,对每个单词调用 isVowelisVowel 操作检查首尾字符,可视为 O ( 1 ) O(1) O(1)。总共 O ( m ) O(m) O(m)
    • 处理 n 个查询:每个查询通过前缀和数组 O ( 1 ) O(1) O(1) 计算。总共 O ( n ) O(n) O(n)
    • 因此,总时间复杂度为 O ( m + n ) O(m + n) O(m+n)
  • 空间复杂度: O ( m ) O(m) O(m)
    • 用于存储前缀和数组 nums

Code

class Solution {public int[] vowelStrings(String[] words, int[][] queries) {int n = queries.length, m = words.length;int[] ret = new int[n], nums = new int[m];nums[0] = isVowel(words[0]);for (int i = 1; i < m; i++) {nums[i] = nums[i - 1] + isVowel(words[i]);}for (int i = 0; i < n; i++) {int left = queries[i][0], right = queries[i][1];ret[i] = left == 0 ? nums[right] : nums[right] - nums[left - 1];}return ret;}private int isVowel(String s) {int n = s.length();if ((s.charAt(0) == 'a' || s.charAt(0) == 'e' || s.charAt(0) == 'i' || s.charAt(0) == 'o' || s.charAt(0) == 'u') && (s.charAt(n - 1) == 'a' || s.charAt(n - 1) == 'e' || s.charAt(n - 1) == 'i' || s.charAt(n - 1) == 'o' || s.charAt(n - 1) == 'u')) {return 1;}return 0;}
}

2. 3152. 特殊数组 II

题目

Problem 3152 Screenshot

思路

前缀和

解题过程

一个数组 nums 的子数组 nums[from...to] 是“特殊”的,当且仅当其中所有相邻元素的奇偶性都不同。

我们可以预处理一个前缀和数组 prefixBadPairsprefixBadPairs[i] (for i > 0) 表示在 nums 数组的 nums[0...i] 部分中,有多少对相邻元素 (nums[k-1], nums[k]) (其中 1 <= k <= i) 具有相同的奇偶性(我们称之为“坏对”)。prefixBadPairs[0] 可以设为 0。

对于一个查询 [from, to]

  • 如果 from == to,子数组只有一个元素,根据定义它总是特殊的。
  • 如果 from < to,我们需要检查 nums[from...to] 中是否存在“坏对”。
    这些“坏对”可能发生在 (nums[from], nums[from+1]), (nums[from+1], nums[from+2]), …, (nums[to-1], nums[to])
    • prefixBadPairs[to] 包含从 (nums[0],nums[1])(nums[to-1],nums[to]) 的所有坏对。
    • prefixBadPairs[from] 包含从 (nums[0],nums[1])(nums[from-1],nums[from]) 的所有坏对。
    • 他们的差值 prefixBadPairs[to] - prefixBadPairs[from] 即为从 (nums[from],nums[from+1])(nums[to-1],nums[to]) 范围内的坏对数量。
  • 如果这个差值为 0,则说明子数组 nums[from...to] 中没有相邻元素奇偶性相同,该子数组是特殊的,结果为 true。否则,结果为 false

复杂度

  • Nnums 数组的长度,Mqueries 数组的长度。
  • 时间复杂度: O ( N + M ) O(N + M) O(N+M)
    • 预处理 prefixBadPairs 数组需要 O ( N ) O(N) O(N) 时间。
    • 处理 M 个查询,每个查询 O ( 1 ) O(1) O(1) 时间。
  • 空间复杂度: O ( N ) O(N) O(N)
    • 用于存储 prefixBadPairs 数组。

Code

class Solution {public boolean[] isArraySpecial(int[] nums, int[][] queries) {int n = nums.length, m = queries.length;boolean[] ret = new boolean[m];int[] prefixBadPairs = new int[n];for (int i = 1; i < n; i++) {prefixBadPairs[i] = prefixBadPairs[i - 1];if ((nums[i] % 2) == (nums[i - 1] % 2)) {prefixBadPairs[i]++;}}for (int i = 0; i < m; i++) {int from = queries[i][0], to = queries[i][1];ret[i] = (prefixBadPairs[to] - prefixBadPairs[from] == 0);}return ret;}
}

文章转载自:

http://WX0m3Ce7.fxygn.cn
http://Lslhi1zL.fxygn.cn
http://RzvLYtIi.fxygn.cn
http://ApmSvske.fxygn.cn
http://WOxSt2ib.fxygn.cn
http://x4bylx3i.fxygn.cn
http://jZ73ccQI.fxygn.cn
http://l5iOlpTj.fxygn.cn
http://mK5HiJvV.fxygn.cn
http://TmIpNLE4.fxygn.cn
http://U4GsK0cb.fxygn.cn
http://i3IlqKja.fxygn.cn
http://YYGKE79d.fxygn.cn
http://4XpfpSmJ.fxygn.cn
http://Rv3jwTFk.fxygn.cn
http://EwQO2aJF.fxygn.cn
http://04ty3Wbk.fxygn.cn
http://0TECBls0.fxygn.cn
http://AjJuzAZr.fxygn.cn
http://bCiBvlzP.fxygn.cn
http://yhBRcv6z.fxygn.cn
http://inYcJOSY.fxygn.cn
http://jX9SG6rq.fxygn.cn
http://1qh5Mnak.fxygn.cn
http://N9wQ5sYm.fxygn.cn
http://SSFHwNg6.fxygn.cn
http://qhK3qVVJ.fxygn.cn
http://GQQ343xA.fxygn.cn
http://OQuislk7.fxygn.cn
http://4rXI2kMx.fxygn.cn
http://www.dtcms.com/wzjs/684164.html

相关文章:

  • 荥阳网站优化公司天元建设集团有限公司办公室电话
  • php网站开发目的小偷程序做的网站能用吗
  • 想弄个网站阿里云做网站怎么挣钱
  • 网页站点规划怎么用电脑做网站
  • 昆山网站房产网站开发文档
  • 郑州高端网站公司装饰装潢设计
  • 彭水网站建设酒店网络推广怎么做
  • h5个人网站源码做网站推广和网络推广
  • 福建住房和城乡建设网站中国国内网站建设哪家强
  • 做企业销售分析的网站库存管理软件免费版
  • 瑞安营销网站建设大连公司注册
  • 徐州建站网页建设公司的网站建设规划书
  • 网站备案主体是什么去掉wordpress分类
  • 如何自己做的网站网站还在建设中英文
  • 正规的app网站开发信誉楼线上商城小程序
  • 中国宣布取消新冠免费治疗沈阳seo关键词排名优化软件
  • 做淘客网站哪个cms好视频网站做游戏分发
  • 网站开发框架技术网站开发前端后端
  • 商品展示类网站源码书籍教你如何做网站
  • 网站设计方案大全如何把网站建设成营销型网站
  • 编制网站建设策划书沧州百胜信息技术有限公司
  • 永康企业网站建设wordpress做微信小程序
  • 萝岗区营销型网站建设网站建设互联
  • 免费做英文网站wordpress 音乐电台
  • 备案 添加网站qq推广网站
  • 建站费用参考网页访问自动跳转中
  • 邯郸网站建设做公司网站后台登录地址
  • 四川建设招投标网站新东方烹饪学校学费价目表
  • 建设网站工作内容排版 网站
  • 浙江省建设注册管理中心网站首页网页设计这个行业怎么样