算法通关村第16关【青铜】| 滑动窗口思想
1. 滑动窗口的基本思想
一句话概括就是两个快慢指针维护的一个会移动的区间

固定大小窗口:求哪个窗口元素最大、最小、平均值、和最大、和最小
可变大小窗口:求一个序列里最大、最小窗口是什么
2. 两个入门题
(1)子数组最大平均数

思路:每次窗口向右滑动一格,大小不变为k,遍历一次数组结果就出来了
class Solution {public double findMaxAverage(int[] nums, int k) {int left = 0;int right = k-1;double sum = 0;for(int i = 0;i<k;i++){sum += nums[i];}double res = sum/k;while(right<nums.length-1){right++;left++;sum = sum - nums[left-1] + nums[right];if(sum/k>res){res = sum/k;}}return res;}
}
(2)最长连续递增序列

思路:窗口是递增的序列,当符合递增条件时窗口扩大,当不符合递增窗口重置为当前right位置,用一个变量来记录最长的递增子序列长度(窗口长度)
class Solution {public int findLengthOfLCIS(int[] nums) {if(nums.length == 1){return 1;}int left = 0;int right = 0;int count = 1;int res = 1;while(right<nums.length-1){if(nums[right+1]>nums[right]){count++;right++;}else{res = res<count ? count : res;count = 1;right++;left = right;}}return count > res ? count : res;}
}
相关文章:
算法通关村第16关【青铜】| 滑动窗口思想
1. 滑动窗口的基本思想 一句话概括就是两个快慢指针维护的一个会移动的区间 固定大小窗口:求哪个窗口元素最大、最小、平均值、和最大、和最小 可变大小窗口:求一个序列里最大、最小窗口是什么 2. 两个入门题 (1)子数组最大平…...
CentOS安装openjdk和elasticsearch
CentOS安装openjdk 文章目录 CentOS安装openjdk一、yum1.1search1.2安装openjdk 二、elasticsearch的启动和关闭2.1启动2.2关闭2.3添加服务 一、yum 1.1search yum search java | grep jdk1.2安装openjdk [roottest ~]# yum install java-1.8.0-openjdk -y 查看openjdk版本 …...
【新版】系统架构设计师 - 案例分析 - 信息安全
个人总结,仅供参考,欢迎加好友一起讨论 文章目录 架构 - 案例分析 - 信息安全安全架构安全模型分类BLP模型Biba模型Chinese Wall模型 信息安全整体架构设计WPDRRC模型各模型安全防范功能 网络安全体系架构设计开放系统互联安全体系结构安全服务与安全机制…...
数据库设计(火车订票系统)
为一个火车订票系统设计一个数据库是一个好的方法来训练你的数据库技巧。 其中有一些需要考虑到的复杂度。 过一些需求,并且创建表格。 为这个虚构的火车订票系统提出了10个需求。 我们将把其中每个添加到entity relational diagram(实体关系图&…...
qemu+docker在服务器上搭建linux内核调试环境
基于docker和qemu的操作系统实验环境 参考以上文章实现。 其中 docker run -it --name linux_qemu qemu /bin/bash #从qemu镜像启动一个容器linux_qemu,进入shell 要改为 docker run -it --name linux_qemu 3292900173/qemu /bin/bash另外,在vscode运行过程中,ssh远…...
Stable Diffusion 参数介绍及用法
大模型 CheckPoint 介绍 作用:定调了作图风格,可以理解为指挥者 安装路径:models/Stable-diffusion 推荐: AnythingV5Ink_v32Ink.safetensors cuteyukimixAdorable_midchapter2.safetensors manmaruMix_v10.safetensors counterf…...
打印大对象日志导致GC问题的解决
内容: rpc调用外部服务时,需要将req和resp的信息打印出来,以便于排查问题。但是有的rpc服务的resp信息过于庞大,比如resp中有List<>信息,list很大很大时会导致log.info打印信息时,产生GC,…...
【Docker】学习笔记
1. docker基本操作 镜像搜索 // 直接搜索镜像资源 docker search mysql // 搜索过滤 docker search --filter "is-officialtrue" mysql // 官方发布镜像拉取镜像 docker pull mysql查看本地镜像 docker images删除本地镜像 docker rmi mysql // 强制删除镜像 d…...
网易云信4K 8K RTC助力远程医疗的技术实践
// 编者按:随着近年来国家关于缓解医疗资源分配不均的一系列政策出台,远程医疗作为平衡医疗资源分配的有力手段,目前正处于强劲发展阶段。网易云信运用超高清RTC视频技术助力医疗行业实现了远程高清视频病理分析和手术示教等能力。LiveVide…...
【排序算法】冒泡排序、插入排序、归并排序、希尔排序、选择排序、堆排序、快速排序
目录 几大排序汇总 1.冒泡排序 性能: 思路和代码: 2.插入排序 性能: 思路和代码: 3.归并排序 性能: 思路和代码: 4.希尔排序 性能: 思路和代码: 5.选择排序 性能: 思路和代码: 6.堆排序 性能: 思路和代码: topK问题 7.快速排序 性能: 思路和代码: 几大排…...
Linux学习笔记-应用层篇
1、Linux进程、线程概念/区别 Linux进程和线程是计算机系统中两种不同的资源分配和调度单位。 进程是计算机系统进行资源分配和调度的基本单位,也被认为是正在运行的程序。在面向线程的计算机结构中,进程是线程的容器。进程拥有独立的内存和系统资源&am…...
MySQL数据库的存储引擎
目录 一、存储引擎概念 二、存储引擎 2.1MyISAM 2.11MyISAM的特点 2.12MyISAM表支持3种不同的存储格式: 2.2 InnoDB 2.21InnoDB特点介绍 三、InnoDB与MyISAM 区别 四、怎么样选择存储引擎 五、查看存储引擎 六、查看表使用的存储引擎 七、修改存储引擎 …...
Linux-多路转接-epoll
epoll 接口认识epoll_createepoll_ctlepoll_wait epoll工作原理在内核中创建的数据结构epoll模型的一个完整工作流程 epoll工作模式LT-水平触发ET-边缘触发两种方式的对比 epoll的使用场景对于poll的改进惊群效应什么是惊群效应如何解决惊群效应原子操作/mutex/spinlock如何选择…...
Java面试被问了几个简单的问题,却回答的不是很好
作者:逍遥Sean 简介:一个主修Java的Web网站\游戏服务器后端开发者 主页:https://blog.csdn.net/Ureliable 觉得博主文章不错的话,可以三连支持一下~ 如有需要我的支持,请私信或评论留言! 前言 前几天参加了…...
概率论几种易混淆的形式
正态分布标准型 x − μ σ \frac{x - \mu}{\sigma} σx−μ 大数定律形式 P { X ≤ ∑ i 1 n x i − n μ n σ 2 } ∫ − ∞ X 1 2 π e − x 2 2 d x P\{X \le \frac{\sum_{i 1}^{n}x_i -n\mu}{\sqrt{n\sigma^2}} \} \int _{-\infty}^{X}\frac{1}{\sqrt{2\pi}}e^{-\fr…...
PyTorch数据增强后的结果展示
from PIL import Image import torch from torchvision import transformstrans transforms.Compose([transforms.ToTensor(), transforms.RandomErasing(p0.9, value 120, inplaceTrue)]) # 这里Compose是所做的变换img_path 02-56-45-060-1454-camra1.bmp img Image.open…...
指定程序在哪个GPU上运行
摘要: 当本地(或服务器)有个多个GPU时,需要指定程序在指定GPU上运行,需要做以下设置。 目录 一、在终端上指定GPU二、在程序中指定GPU三、系统变量指定GPU四、pytorch中指定GPU 一、在终端上指定GPU 在终端运行程序时…...
Linux CentOS7 vim多文件编辑
使用vim编辑多个文件,十分常用的操作。本文从打开、显示、切换文件到退出,进行简单讨论。 一、打开文件 1.一次打开多个文件 vim还没有启动的时候,在终端里输入vim file1 file2 … filen便可以打开所有想要打开的文件。 执行命令 vim fil…...
PAT甲级真题1153: 解码PAT准考证
🕺作者: 主页 我的专栏C语言从0到1探秘C数据结构从0到1探秘Linux菜鸟刷题集 😘欢迎关注:👍点赞🙌收藏✍️留言 🏇码字不易,你的👍点赞🙌收藏❤️关注对我真的…...
linux信号
title: linux信号 createTime: 2020-10-29 18:05:52 updateTime: 2020-10-29 18:05:52 categories: linux tags: SIGHUP 终止进程 终端线路挂断[喝小酒的网摘]http://blog.hehehehehe.cn/a/16999.htm SIGINT 终止进程 中断进程 SIGQUIT 建立CORE文件终止进程,并且生…...
让ai调试ai:在快马平台上实现rag提示词与检索策略的自动优化
让AI调试AI:在快马平台上实现RAG提示词与检索策略的自动优化 最近在开发一个基于RAG(检索增强生成)的问答系统时,我发现提示词优化和检索策略调优是个既关键又耗时的环节。传统的手动调试方式效率低下,于是尝试用AI来…...
OpCore Simplify:15分钟搞定黑苹果EFI配置的终极指南
OpCore Simplify:15分钟搞定黑苹果EFI配置的终极指南 【免费下载链接】OpCore-Simplify A tool designed to simplify the creation of OpenCore EFI 项目地址: https://gitcode.com/GitHub_Trending/op/OpCore-Simplify 还在为复杂的黑苹果EFI配置而头疼吗&…...
Nodejs零基础入门指南:用快马AI生成你的第一个命令行工具
Nodejs零基础入门指南:用快马AI生成你的第一个命令行工具 作为一个刚接触Node.js的新手,我一直在寻找一个简单又有趣的入门项目。最近发现InsCode(快马)平台的AI生成功能特别适合学习,它能根据我的需求描述直接生成可运行的代码,…...
2025_NIPS_CELLVERSE: Do Large Language Models Really Understand Cell Biology?
一、文章主要内容总结 该研究聚焦于大语言模型(LLMs)在细胞生物学领域的应用能力评估,核心贡献是构建了首个统一的语言中心型基准数据集CELLVERSE,并通过系统实验揭示了LLMs在单细胞分析任务中的表现与局限: 背景与问题:现有单细胞分析方法存在缺乏统一性(需为不同多组…...
3步完成:星图平台OpenClaw镜像体验Qwen3.5-9B基础功能
3步完成:星图平台OpenClaw镜像体验Qwen3.5-9B基础功能 1. 为什么选择星图平台体验OpenClaw 作为一个长期关注AI自动化工具的技术爱好者,我一直在寻找能够快速验证OpenClaw功能的方法。传统本地部署需要配置Python环境、解决依赖冲突、调试网络权限&…...
C盘空间不足?符号链接轻松迁移文件
今天,给大家介绍一种与众不同的清理 C 盘的方法——符号链接。与传统方法不同,符号链接不会删除文件,而是将 C 盘的文件移动到其他盘。换言之,使用此方法的前提是:其他盘还有足够的空间,但同时,…...
Python办公自动化教程 - openpyxl让Excel处理变得轻松
Python办公自动化教程 - openpyxl让Excel处理变得轻松适用人群:零基础办公人员、想提高工作效率的非IT专业人士 学习目标:掌握使用Python处理Excel文件,实现日常办公自动化 前置知识:不需要任何编程基础,只要会操作电脑…...
DroidCam手机变电脑摄像头工具
DroidCam 这款免费工具,能让你的安卓或iPhone瞬间变成电脑的无线/USB摄像头。无论是开Zoom会议、上网课还是直播,画质直接碾压普通电脑摄像头。优点很明显:零成本:利用闲置旧手机,省下买新摄像头的钱。画质好ÿ…...
雯雯的后宫-造相Z-Image-瑜伽女孩部署避坑指南:Xinference加载超时与日志定位技巧
雯雯的后宫-造相Z-Image-瑜伽女孩部署避坑指南:Xinference加载超时与日志定位技巧 1. 项目简介与部署概述 雯雯的后宫-造相Z-Image-瑜伽女孩是一个专注于生成瑜伽主题女孩图片的AI模型,基于Z-Image-Turbo的LoRA版本构建。这个镜像提供了完整的文生图服…...
4步实现代码块专业化管理:技术文档效率提升指南
4步实现代码块专业化管理:技术文档效率提升指南 【免费下载链接】obsidian-better-codeblock Add title, line number to Obsidian code block 项目地址: https://gitcode.com/gh_mirrors/ob/obsidian-better-codeblock 在技术文档创作过程中,代码…...
