首页 > 其他分享 >哈希表的应用

哈希表的应用

时间:2024-01-11 16:47:03浏览次数:20  
标签:哈希 int 索引 result 应用 fruits left


也是滑动窗口的应用,但用到了哈希表。
哈希表一个索引,一个真值。索引可以是任何符号,因此可以表示一个事物的数量关系和对应关系.删除某个索引及真值时,要用迭代器,erase(it)。
find是查找索引返回迭代器。

点击查看代码
class Solution {
public:
    int totalFruit(vector<int>& fruits) {
int n=fruits.size();
unordered_map<int,int>cnt;
int result=0;
int left=0;
for(int right=0;right<n;++right){
    ++cnt[fruits[right]];
    while(cnt.size()>2){
        auto it=cnt.find(fruits[left]);
        --it->second;
        if(it->second==0){cnt.erase(it);}
         ++left;
    }
   
    result=max(result,right-left+1);
}
return result;
    }
};

标签:哈希,int,索引,result,应用,fruits,left
From: https://www.cnblogs.com/yun-che/p/17958857

相关文章

  • 摩托车充气泵技术应用方案
    技术工程师在做产品方案开发之前,首先也是最重要的就是芯片选型。为什么这样说呢?那是因为芯片是整个方案设计中,最至关重要的一环,没有它,后面的工作将无法进行,只有将芯片核心基础定下来,后面的一切工作才能顺利铺展开来。它是方案中最重要如同定海神针般的存在,我们无法做到抛弃它......
  • 天拓四方5G边缘计算网关在工业领域的应用示例
    在工业领域,5G边缘计算网关的应用正在逐渐普及,为工业4.0和智能制造的实现提供了强大的技术支持。通过将数据分析和处理能力从中心节点转移至网络的边缘,5G边缘计算网关为工业生产带来了前所未有的机遇。本文将通过举例实际应用,探讨5G边缘计算网关在工业领域的具体应用。案例一:智能制......
  • AI人工智能在智能写作领域的应用前景
    AI人工智能在智能写作领域具有巨大的应用潜力。随着自然语言处理技术的进步,AI可以通过学习大量文本数据来模拟人类的写作风格和思维方式,从而自动生成文章、小说或新闻报道。AI写作工具可以帮助作家和编辑提高工作效率,降低创作成本,并且能够根据用户需求定制内容。 此外,AI还可用......
  • 记使用Arthas定位并解决Java应用死锁问题
    背景在一次生产环境部署后,我们的JavaWeb应用开始表现出严重的性能下降。用户报告说网页响应变得非常慢,有时甚至完全无响应。初步检查服务器资源和应用日志未发现明显的问题,我们怀疑可能是应用内部出现了死锁。引入Arthas为了不影响生产环境运行,我们决定使用Arthas进行问题诊断。Ar......
  • 零知识证明的最新发展和应用
    PrimiHub一款由密码学专家团队打造的开源隐私计算平台,专注于分享数据安全、密码学、联邦学习、同态加密等隐私计算领域的技术和内容。当企业收集大量客户数据去审查、改进产品和服务以及将数据资产货币化时,他们容易受到网络攻击威胁,造成数据泄露。数据泄露的损失每年都在上升,每......
  • 06-无状态应用:剖析 Kubernete 业务副本及水平扩展底层原理
    在上两节课中,我们已经了解了Kubernetes中最关键的对象Pod,也学习了一些Pod的常见用法。每一个Pod都是应用的一个实例,但是通常来说你不会直接在Kubernetes中创建和运行单个Pod。因为Pod的生命周期是短暂的,即“用后即焚”。理解这一点很重要,这也是“不可变基础设施”这......
  • 07-有状态应用:Kubernete 如何通过 StatefulSet 支持有状态应用?
    在上一节课中,我们学习了Kubernetes中的无状态工作负载,并上手实践了Deployment对象,相信现在你已经慢慢喜欢上Kubernetes了。那么本节课,我们来一起看看Kubernetes中的另外一种工作负载StatefulSet。从名字就可以看出,这个工作负载主要用于有状态的服务发布。关于有状态服务......
  • 单模与双模光纤收发器的选择与应用
    在当今的网络通信领域,光纤收发器的应用至关重要。本文旨在探讨单模光纤收发器和双模光纤收发器的特点、区别以及各自的应用场景。光纤收发器概述光纤收发器是一种设备,用于将电信号和光信号互换,以实现远距离通信。根据光纤类型的不同,分为单模光纤收发器和双模光纤收发器。单模光纤收......
  • 广义物联网与AI大模型迷你版的应用与代码
    广义物联网(IoT)是指通过互联网连接各种物理设备,实现设备之间的信息交换和通信。AI大模型迷你版是指一个简化版的人工智能模型,用于处理和分析数据。在广义物联网与AI大模型迷你版的应用中,我们可以将物联网设备收集到的数据输入到AI大模型中进行分析和预测。以下是一个简单的示例,使用......
  • 滑动窗口(双指针的又一应用)
    滑动窗口相当于双指针的变形,通过j指向末尾边界,这样遍历就只有O(n)的数量级,再通过i指针作为起始边界,while循环确定最短的长度。因为ij所框定的边界像窗口,所以叫滑动窗口。用于解决的问题是最优区间的问题,记忆方法是右遍历,左判断,确定最佳区间。还有一个技巧是可以用INT_MAX表示一......