【滑动窗口】Leetcode 水果成篮

题目解析

904. 水果成篮
在这里插入图片描述


算法讲解

这道题的本质就是:寻找一段连续的区域(子数组),这一段连续的区域里面最多包含两种水果,因为有可能这一段连续的区域里面全是一种水果,比如:f(x) = {1,1,1,1,1,1,1}
我们这道题需要使用一个数据结构Hash,使用Hash是为了更方便 快捷的寻找出这一种水果的数量;
但我们cont大于两种水果的时候,说明我们已经找到了这一段连续的区间,只不过需要继续往后面走,看看有没有更合适的,所以就需要继续移动窗口

class Solution {
public:int totalFruit(vector<int>& nums) {//寻找子数组,子数组中包含不超过两个种类的水果  有可能全部都是same数int left = 0, right = 0;//数组的长度最大到10^5int Hash[100000] = {0};int n = nums.size();int count = 0;  //记录种类个数int ret = 0;while(right < n){if(Hash[nums[right]] == 0)count++;Hash[nums[right]]++;//走到这里,说明已经遇到了第三种水果while(count > 2){Hash[nums[left]]--; if(Hash[nums[left]] == 0)count--;left++;}ret = max(ret, right - left + 1);right++;} return ret;}
};

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/781221.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux中安装JDK17.X

1、总体概述&#xff1f; 该操作方式适合centos或red hat环境 2.1、在线下载JDK安装包&#xff1f; 通过wget命令下载JDK17.X包 wget https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.tar.gz 如果提示&#xff1a;没有wget命令就安装wget yum install w…

G35-2单螺杆泵

在现代工业流程中&#xff0c;流体输送是至关重要的一环。无论是石油化工、能源开采还是精细化工领域&#xff0c;高效率和可靠的泵送设备都是确保生产过程平稳运行的关键。在这样的背景下&#xff0c;G35-2单螺杆泵凭借其卓越的性能和广泛的应用性&#xff0c;成为了众多工业企…

答题小程序功能细节揭秘:如何提升用户体验和满足用户需求?

答题小程序功能细节体现 随着移动互联网的快速发展&#xff0c;答题小程序成为了用户获取知识、娱乐休闲的重要平台。一款优秀的答题小程序不仅应该具备简洁易用的界面设计&#xff0c;更应该在功能细节上做到极致&#xff0c;以提升用户体验和满足用户需求。本文将从题库随机…

SCI论文发表多长时间才可以被检索?

sci检索&#xff0c;是指发表的sci论文可以在web of science上查询到&#xff0c;是sci论文发表的最后一个步骤&#xff0c;建立在见刊的基础之上。那么&#xff0c;sci发表后多久可检索?没有统一标准&#xff0c;刊物不同&#xff0c;检索时间有差异。 一、SCI文章检索的注意…

深入解析AI大模型:原理、挑战与前景

前言 在现今技术飞速发展的时代&#xff0c;AI大模型学习已成为科技领域的研究热点。要想在这一领域取得突破&#xff0c;研究者需掌握扎实的数学基础、编程能力以及特定领域的业务知识。本文将深入剖析AI大模型的原理、挑战与前景&#xff0c;为读者提供有益的建议。 一、AI…

Ubuntu22.04安装 wordpress

第一步安装 mysql 这个必须是第一步 sudo apt install mysql-server第二步修改mysql密码 ubuntu 首次登录mysql8 未设置密码或忘记密码解决方法 亲测可用 第三步安装 nginx sudo apt update && sudo apt upgrade -y sudo apt install nginx sudo systemctl enable …

Mysql连接报错:1130-host ... is not allowed to connect to this MySql server如何处理

我用navicat连接我的阿里云服务器的mysql服务器的时候,出现了1130的报错。&#xff08;mysql Server version: 5.7.42-0ubuntu0.18.04.1 (Ubuntu)&#xff09; 我来记录一下这个原因&#xff0c;以及修改过程&#xff01; 1.首先进入mysql -u root -p&#xff0c; mysql客户端…

FoFa 查询工具

FoFaX是一款使用Go编写的命令行FoFa查询工具、在支持FoFa查询规则上增加了Fx语法来方便使用者编写自己的规则、并且内置了一些常用的规则&#xff0c;除此之外还有联动其他安全产品在内的其他多个实用功能 ****fofax工具获取 https://github.com/xiecat/fofax 为了帮助大家更…

【微服务】配置Nacos管理SpringBoot配置文件(附解压包)

&#x1f4dd;个人主页&#xff1a;哈__ 期待您的关注 一、什么是Nacos Nacos可以帮助我们配置和管理微服务&#xff0c;是阿里的一个开源产品&#xff0c;是针对微服务架构中的服务发现、配置管理、服务治理的综合型解决方案。Nacos可以用来实现配置中心和服务注册中心。 …

2024年道路运输安全员考试真题题库

2024年道路运输安全员考试真题题库 一、单选题 18.进行超限运输需要对道路进行加固、改造时&#xff0c;所需费用由谁承担&#xff1f;&#xff08;&#xff09; A.公路管理机构 B.托运人 C.承运人 答案&#xff1a;C 19.大件运输车辆通行公路桥梁时&#xff0c;哪种做…

Kafka 面试题及参考答案

目录 1. Kafka 的核心特性是什么? 2. Kafka 为什么能够实现高吞吐量? 3. Kafka 的消息丢失是

FPGA高端图像处理开发板:鲲叔4EV,寄托了未来的一块开发板

目录 前言鲲叔4EV----高端FPGA图像处理开发板核心板描述底板描述配套例程源码描述配套服务描述开发板获取 前言 在CSDN写博客传播FPGA开发经验已经一年多了&#xff0c;帮助了不少人&#xff0c;也得罪了不少人&#xff0c;有的人用我的代码赢得了某些比赛、得到了心仪的offer…

力扣 520.检测大写字母

我们定义&#xff0c;在以下情况时&#xff0c;单词的大写用法是正确的&#xff1a; 全部字母都是大写&#xff0c;比如 "USA" 。单词中所有字母都不是大写&#xff0c;比如 "leetcode" 。如果单词不只含有一个字母&#xff0c;只有首字母大写&#xff0c…

Java面试必问题22:如何创建线程池(偏重点)创建线程池的注意事项

企业最佳实践&#xff1a;不要使用Executors直接创建线程池&#xff0c;会出现OOM问题&#xff0c;要使用ThreadPoolExecutor构造方法创建&#xff0c;引用自《阿里巴巴开发手册》 【强制】线程池不允许使用 Executors 去创建&#xff0c;而是通过 ThreadPoolExecutor 的方式&a…

基于视觉的机器人抓取——从物体定位、物体姿态估计到平行抓取器抓取估计——综述

综述 本文对基于视觉的机器人抓取进行了全面的综述。我们总结了基于视觉的机器人抓取过程中的三个关键任务&#xff0c;即物体定位、物体姿态估计和抓取估计。详细地说&#xff0c;对象定位任务包括无分类的对象定位、对象检测和对象实例分割。此任务提供输入数据中目标对象的…

腾讯也来电商掺一脚了?视频号小店或成2024年最大黑马!

大家好&#xff0c;我是电商小布。 当前的互联网时代下&#xff0c;电商无疑是最炙手可热的行业。 各种各样电商项目的出现&#xff0c;给了我们大家更多的机会选择&#xff0c;并从中来享受到流量至上的魅力。 腾讯旗下的视频号小店就是其中之一。 这个项目是依靠于视频号…

2024蓝桥杯每日一题(区间DP)

备战2024年蓝桥杯 -- 每日一题 Python大学A组 试题一&#xff1a;游戏 试题二&#xff1a;石子合并 试题三&#xff1a;密码脱落 试题四&#xff1a;能量项链 试题一&#xff1a;游戏 【题目描述】 玩家一和玩家二共同玩一个小游戏。给定一个包含 N 个…

创新科技助力电子元器件商城的品牌建设与用户体验提升

创新科技可以在电子元器件商城的品牌建设和用户体验提升方面发挥重要作用。以下是一些创新科技可以助力的方面&#xff1a; 虚拟现实&#xff08;VR&#xff09;和增强现实&#xff08;AR&#xff09;技术&#xff1a; 利用VR和AR技术&#xff0c;为用户提供沉浸式的购物体验。…

ios应用内支付

用uniapp开发iOS应用内支付 准备前端代码服务器端处理如果iOS支付遇到问题实在解决不了&#xff0c;可以联系我帮忙解决&#xff0c;前端后端都可以解决&#xff08;添加的时候一定要备注咨询iOS支付问题&#xff09; 准备前端代码 获取支付通道 (uni.getProvider) uni.getPr…

双非本,拿到美团测开实习了——经验分享

前言 最近是春招、暑期实习的高峰期&#xff0c;自己也凭借着持续的准备和一部分运气&#xff0c;较早拿到了美团的测开暑期实习。 以前接到美团的短信&#xff0c;都是外卖送达的通知&#xff0c;没想到自己有一天&#xff0c;也能收到offer录用的通知。虽然是测试开发的岗位…