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

湘潭网站建设公司郑州优化网站关键词

湘潭网站建设公司,郑州优化网站关键词,电脑网页游戏大全,自己可以建个免费网站吗解题思路: 初始化窗口元素: 遍历前 k 个元素,构建初始单调队列。若当前索引对应值大于等于队尾索引对应值,移除队尾索引,将当前索引加入队尾。遍历结束时当前队头索引即为当前窗口最大值,将其存入结果数组…

在这里插入图片描述

解题思路:

  1. 初始化窗口元素: 遍历前 k 个元素,构建初始单调队列。若当前索引对应值大于等于队尾索引对应值,移除队尾索引,将当前索引加入队尾。遍历结束时当前队头索引即为当前窗口最大值,将其存入结果数组。
  2. 处理剩余元素: 对于 k+1 之后的元素,加入规则同上。若队头索引已不在当前窗口范围内(即deque.peekFirst() <= i - k),则移除队头索引。当前队头索引即为窗口最大值,将其存入结果数组。

Java代码:

public class Solution {public int[] maxSlidingWindow(int[] nums, int k) {int n = nums.length;Deque<Integer> deque = new ArrayDeque<>();for (int i = 0; i < k; ++i) {while (!deque.isEmpty() && nums[i] >= nums[deque.peekLast()]) {deque.pollLast();}deque.offerLast(i);} int[] res = new int[n - k + 1];res[0] = nums[deque.peekFirst()];for (int i = k; i < n; ++i) {while (!deque.isEmpty() && nums[i] >= nums[deque.peekLast()]) {deque.pollLast();}deque.offerLast(i);if (deque.peekFirst() <= i - k) {deque.pollFirst();}res[i - k + 1] = nums[deque.peekFirst()];}return res;}
}

复杂度分析:

  • 时间复杂度: O(n),每个元素最多入队和出队一次,因此总操作次数为线性时间。

  • 空间复杂度: O(k),最坏情况下,队列中存储窗口内所有元素的索引(当数组严格递减时)。

在这里插入图片描述

解题思路:

  1. 字符统计初始化: 使用两个长度为 256 的数组 countT 和 countS,分别统计 t 中每个字符的出现次数,以及当前窗口中 s 的字符出现次数。
  2. 滑动窗口遍历: 右指针 r:遍历 s,将字符纳入窗口,并更新 countS。​左指针 l:当窗口满足包含 t 所有字符的条件时,尽可能向右收缩窗口,以寻找更小的有效窗口。
  3. 窗口有效性判断: 通过 isInclude 方法检查当前窗口的字符是否覆盖了 t 的所有字符。
  4. 更新最小窗口: 每次找到有效窗口时,记录其长度和位置,最终返回最小的窗口子串。

Java代码:

class Solution {public String minWindow(String s, String t) {char[] S = s.toCharArray();char[] T = t.toCharArray();int n = S.length;int left = -1;int right = n;int[] countS = new int[128];int[] countT = new int[128];for (int i = 0; i < T.length; i++) {countT[T[i]]++;}int l = 0;for (int r = 0; r < n; r++) {countS[S[r]]++;while (isInclude(countS, countT)) {if (r - l < right - left) {right = r;left = l;}countS[S[l]]--;l++;}}return left < 0 ? "" : s.substring(left, right + 1);}public boolean isInclude(int[] countS, int[] countT) {for (int i = 0; i < 128; i++) {if (countS[i] < countT[i]) {return false;}}return true;}
}

复杂度分析:

  • 时间复杂度: O(n),左右指针移动最多 2n 次。
  • 空间复杂度: O(1),使用固定大小的数组,与输入规模无关。
http://www.dtcms.com/wzjs/482087.html

相关文章:

  • 专业b2c电商网站开发线上购买链接
  • 在PC上安装WordPress武汉建站优化厂家
  • cnzz统计代码如何添加到网站上去关键词seo排名优化
  • 网站前端是做啥的哪个平台可以买卖链接
  • 最权威的网站推广公司怎样创建网站
  • seo网站诊断文档案例百度口碑官网
  • 太原响应式网站建设凡科网怎么建网站
  • 苹果CMS如何做视频网站厦门seo网站管理
  • 购物网站的后台站长工具之家
  • 贵州省兴义市专做网站公司品牌营销策划ppt
  • 济南网站建设sdqswl2022百度seo优化工具
  • oa厂家排名优化神马排名软件
  • 怎么建立网站 个人游戏广告联盟平台
  • 滕州哪里有做网站的百度竞价推广公司
  • 做挂网站吗国际网站平台有哪些
  • 哪家公司建设网站今日新闻快报
  • 想在网上做外卖 上什么网站好千锋教育培训机构可靠吗
  • 网站评论做外链seo需要会什么
  • 做信息类网站有哪些杭州网站建设书生商友
  • 吐血整理:2013最新外链网站大全_做seo再也不愁发外链了!通过百度指数不能判断出
  • 惠州做网站优化怎么在百度上投放广告
  • 沈阳设计网站公司哪家好百度网址安全检测
  • 微网站建设哪家好今天的新闻最新消息
  • 农村小学校园网站建设方案生成关键词的软件免费
  • 做网站排名步骤上海网站外包
  • 香港人做evus在哪个网站网店网络营销与推广策划书
  • 网站建设哪好win10优化大师
  • 网站内容设置百度竞价广告收费标准
  • 电子商务网上购物网站建设规划seo关键词优化排名软件
  • 建立自己公司网站的方法百度搜索引擎投放