904.水果成篮

2024-09-09 04:28
文章标签 水果 904 成篮

本文主要是介绍904.水果成篮,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

题目

链接:leetcode链接
在这里插入图片描述

思路分析(滑动窗口)

读完题目,很明显,这个题目需要我们寻找一个最长子数组,使得这个子数组里面最多存在两种不同的数字,很容易联想到使用滑动窗口。

另外,需要使用hash表来记录区间内的不同种水果的个数

首先还是left,right = 0;
进窗口:right进哈希表
判断:哈希表的size > 2,就需要出窗口
出窗口:hash[left]–的同时,要去判断是否hash[left] == 0,如果等于0,删除该元素即可
更新结果,ret = max(ret,right - left + 1)

代码

int totalFruit(vector<int>& fruits) {unordered_map<int,int> hash;int ret = 0;for(int left = 0,right = 0;right < fruits.size();++right){hash[fruits[right]]++;//进窗口while(hash.size() > 2)//这个地方在不定长窗口就是通过循环来控制窗口合法{hash[fruits[left]]--;if(hash[fruits[left]] == 0) hash.erase(fruits[left]);++left;}ret = max(right - left + 1,ret);}return ret;}

这篇关于904.水果成篮的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1150158

相关文章

笔试强训,[NOIP2002普及组]过河卒牛客.游游的水果大礼包牛客.买卖股票的最好时机(二)二叉树非递归前序遍历

目录 [NOIP2002普及组]过河卒 牛客.游游的水果大礼包 牛客.买卖股票的最好时机(二) 二叉树非递归前序遍历 [NOIP2002普及组]过河卒 题里面给的提示很有用,那个马的关系,后面就注意,dp需要作为long的类型。 import java.util.Scanner;// 注意类名必须为 Main, 不要有任何 package xxx 信息publ

【精选】基于Django的智能水果销售系统设计与实现(全网最新定制,独一无二)

博主介绍:     ✌我是阿龙,一名专注于Java技术领域的程序员,全网拥有10W+粉丝。作为CSDN特邀作者、博客专家、新星计划导师,我在计算机毕业设计开发方面积累了丰富的经验。同时,我也是掘金、华为云、阿里云、InfoQ等平台的优质作者。通过长期分享和实战指导,我致力于帮助更多学生完成毕业项目和技术提升。 技术范围:     我熟悉的技术领域涵盖SpringBoot、Vue、SSM、HLMT

【精选】基于Django的智能水果销售系统设计与实现

博主介绍:     ✌我是阿龙,一名专注于Java技术领域的程序员,全网拥有10W+粉丝。作为CSDN特邀作者、博客专家、新星计划导师,我在计算机毕业设计开发方面积累了丰富的经验。同时,我也是掘金、华为云、阿里云、InfoQ等平台的优质作者。通过长期分享和实战指导,我致力于帮助更多学生完成毕业项目和技术提升。 技术范围:     我熟悉的技术领域涵盖SpringBoot、Vue、SSM、HLMT

万万没想到!秋季里的这些水果,对帕金森治疗大有裨益!——蔡英丽医生

随着秋风轻拂,大地披上了一袭金黄色的外衣,这不仅是收获的季节,更是自然对人类健康的又一次慷慨馈赠。对于帕金森病患者而言,这个秋季尤为特别,因为大自然悄然间准备了五种神奇的秋季水果,它们不仅是味蕾的享受,更是治疗路上的得力助手。 葡萄:紫色的健康密码 首当其冲的是葡萄,这串串晶莹剔透的果实中蕴藏着丰富的微量元素,是营养宝库中的佼佼者。而葡萄籽更是不可多得的宝贝,它们富含抗氧化剂与多种有益物质

MATLAB水果分级系统

课题介绍 现在商业行为中,在水果出厂前都需要进行质量检测,需要将不同等级的水果进行分级包装,以保证商业利益最大化。可是传统方法都是依靠人工进行检测,效率低下,主观成分大,并不能很好客观地评价出货质量,导致工厂损失利益,增加客户投诉,从而造成品牌效率损失,造成隐形的损失。     该课题为基于MATLAB的水果分级系统。适用圆形水果,如苹果,橘子,柚子,柿子等,统计水果图片的面积,圆形度和色

九度OJ-1107-搬水果

只要转化为哈夫曼树模型之后,其代码与求哈夫曼树最小带权路径和别无二致。   以下问题要想到以哈夫曼树建模:哈夫曼编码,多个数的两两合并。 题目地址:点击打开链接 题目描述:     在一个果园里,小明已经将所有的水果打了下来,并按水果的不同种类分成了若干堆,小明决定把所有的水果合成一堆。每一次合并,小明可以把两堆水果合并到一起,消耗的体力等于两堆水果的重量之和。当然经过 n

C# Onnx Yolov5 水果识别,人员识别,物品识别 人工智能

目录 先上效果 来电废话,但实用 网络成功案例实践易失败的原因 万物检测涉及技术  下载合集 关键代码 全部代码 实操vs2022安装关键 YOLO V5核心库编译 编写自己识别软件 更新相关依赖 标注字库文件 测试效果 名词解释YOLO 名词解释ONNX 源码 直播教学和作者 先上效果 来电废话,但实用 为何照做网络成功案例仍失败?软件与男

Java项目:基于SSM框架实现的绿色农产品推广应用网站果蔬商城水果商城蔬菜商城【ssm+B/S架构+源码+数据库+答辩PPT+毕业论文】

一、项目简介 本项目是一套基于SSM框架实现的绿色农产品推广应用网站果蔬商城水果商城蔬菜商城 包含:项目源码、数据库脚本等,该项目附带全部源码可作为毕设使用。 项目都经过严格调试,eclipse或者idea 确保可以运行! 该系统功能完善、界面美观、操作简单、功能齐全、管理便捷,具有很高的实际应用价值 二、技术实现 jdk版本:1.8 及以上 ide工具:IDEA或者eclipse 数据库:

单商户社区团购卖菜卖水果商城自提点商城系统小程序源码

打造便捷团购新体验 🍎 引言:社区团购的崛起 近年来,社区团购以其独特的优势,迅速崛起并受到广大消费者的喜爱。它不仅能够提供物美价廉的商品,还能让居民们享受到更加便捷的购物体验。而单商户社区团购系统小程序,正是为了满足这一市场需求而诞生的。 📱 单商户社区团购系统小程序介绍 1. 定制化服务 单商户社区团购系统小程序为商户提供定制化的服务,商户可以根据自己的需求设置团购商品、价格、

基于SSM+Jsp的水果销售管理网站

开发语言:Java框架:ssm技术:JSPJDK版本:JDK1.8服务器:tomcat7数据库:mysql 5.7(一定要5.7版本)数据库工具:Navicat11开发软件:eclipse/myeclipse/ideaMaven包:Maven3.3.9 系统展示 用户前台首页 用户注册 用户登录 水果信息 个人中心 购物车界面 管理员登录 用户管理