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

印刷行业网站建设王也图片高清头像

印刷行业网站建设,王也图片高清头像,免费购物网站源码,佛山企业网站建设平台leetcode原题链接 题目描述#xff1a; 给你一个整数数组 nums#xff0c;有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。 返回 滑动窗口中的最大值 。 示例1: 输入#xff1a;nums [1,…leetcode原题链接 题目描述 给你一个整数数组 nums有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。 返回 滑动窗口中的最大值 。 示例1: 输入nums [1,3,-1,-3,5,3,6,7], k 3 输出[3,3,5,5,6,7] 解释 滑动窗口的位置 最大值 --------------- ----- [1 3 -1] -3 5 3 6 7 31 [3 -1 -3] 5 3 6 7 31 3 [-1 -3 5] 3 6 7 51 3 -1 [-3 5 3] 6 7 51 3 -1 -3 [5 3 6] 7 61 3 -1 -3 5 [3 6 7] 7示例2 输入nums [1,3,0,2,4] 输出0 解释 nums 无论怎么变化总是有 3 分。 所以我们将选择最小的 k即 0。提示 1 nums.length 105-104 nums[i] 1041 k nums.length 解题思路 方法一单调队列 单调队列队列中的元素是单调递增或单调递减的队列就是单调队列。 维护队列中的元素递增 对于这道题需要维护一个单调递增的队列。 由队尾到队头 元素是单调递增的。如果要入队元素大于队尾元素则队尾元素出队这是个循环操作如下 while(deque.peekLast() newElement){deque.pollLast(); } deque.push(newElement); // 新元素入队如何保证队列中的元素是窗口内的因为窗口一直在向右移动 初始时窗口为1队列中元素为9, 8, 7。窗口向右移动时(窗口2)发现9已不是窗口中的元素但9依然在队列中且9为队列的队头元素需要将9从队列的队头弹出。所以需要进行如下判断: if(deque.peekFirst() v){ // v为上一个窗口最左边的值。deque.poolFirst(); }整体代码如下 public int[] maxSlidingWindow(int[] nums, int k) {int n nums.length;int[] ans new int[n - k 1];DequeInteger deque new LinkedList();int idx 0;for(int i 0; i nums.length; i){// 保证队列中的元素是窗口内的if(!deque.isEmpty() i - k 0 nums[i - k] deque.peekFirst()){deque.pollFirst();}// 维护队列中的元素是递增的while (!deque.isEmpty() nums[i] deque.peekLast()){deque.pollLast();}deque.addLast(nums[i]);if(i k - 1){ans[idx] deque.peekFirst();}}return ans; }方法二线段树 百度百科线段树 线段树中的每个节点存储的是这个区间的最大值。 整体代码如下 public int[] maxSlidingWindow(int[] nums, int k) {int len nums.length;int[] ans new int[len - k 1];this.tr new Node[len * 41];build(1,1,len);for(int i 0; ilen;i){update(1,i1,nums[i]);}for(int i 0; i len -k1;i){ans[i] query(1,i1,ik);}return ans; }class Node {int l, r, v;Node(int l, int r) {this.l l;this.r r;v Integer.MIN_VALUE;} }Node[] tr;void pushup(int u) {tr[u].v Math.max(tr[u 1].v, tr[u 1 | 1].v); }void build(int u, int l, int r) {tr[u] new Node(l, r);if (l ! r) {int mid tr[u].ltr[u].r 1;build(u 1, l, mid);build(u 1 | 1, mid 1, r);} }void update(int u, int x, int v){if(x tr[u].ltr[u].rx){tr[u].v Math.max(tr[u].v, v);} else{int mid tr[u].ltr[u].r1;if(xmid){update(u1,x,v);} else{update(u1|1,x,v);}pushup(u);} } int query(int u, int l, int r){if(l tr[u].ltr[u].rr){return tr[u].v;} else{int mid tr[u].ltr[u].r1;int ans Integer.MIN_VALUE;if(lmid){ans query(u1,l,r);} if(rmid){ans Math.max(query(u1|1,l,r),ans);}return ans;} }
http://www.dnsts.com.cn/news/136307.html

相关文章:

  • 网站界面设计中的布局设计网站未备案wordpress链接
  • 使用c 语言建设网站优点工业和信息化部
  • 如何建立收费网站万网网站建设步骤
  • 嘉兴网站托管防止恶意点击软件管用吗
  • 美妆网站建设网站中使用特殊字体
  • 做房地产咨询网站怎么赢利专注东莞微信网站设计
  • 重庆网站建设咨询电脑经销部开具网站建设费
  • 企业自助建站的网站网站建站专家
  • 投资建设网站网站悬浮窗广告怎么做
  • 学校怎么做网站小程序制作方法
  • 有哪些做网游单机版的网站如何开网站需要多少钱
  • 内部网站做域名解析到端口做网站注意什么问题
  • 小程序 网站建设 app 开发做网站作品是静态
  • 网站如何做品牌营销小众软件
  • 自己提供域名做网站集美那里有教网站建设
  • 织梦网站环境搭建国外什么推广网站好
  • 怎么选择手机网站建设做婚恋网站的翻译好吗
  • 为每个中小学建设网站广告公司广告语简洁
  • 电子商务与网站建设报告什么网站出项目找人做
  • 站长之家网站排名榆林建设网站
  • 十大待遇最好央企seo搜索引擎优化公司
  • 沧州兼职网站建设google收录查询
  • 苏州h5网站建设价格网站链接dw怎么做
  • 做电影网站用什么格式好含山微信搭建网站建设
  • 做网站代理商网站没有备案怎么做淘宝客
  • 深圳外贸网站建设哪家好100个新公司起名
  • 无限成都成都市广播电视台官方网站做基础网站主机要
  • 西安网络技术有限公司网站扬中富裕吗
  • 建设网站的心得详情页设计与制作
  • 网站建设注意要求郑州网站权重