LeetCode1207独一无二的出现次数

题目描述

  给你一个整数数组 arr,请你帮忙统计数组中每个数的出现次数。如果每个数的出现次数都是独一无二的,就返回 true;否则返回 false。

解析

  正常的解法肯定是对每个元素使用一个hashmap,存元素及出现次数,然后通过set去查找是否有重复,但是在上一题(2215)的基础上,可以通过面向输入编程,依旧是创建数组然后对应位置加加,这样操作后再用set去查找。

int[] times = new int[2001];for(int n : arr){times[n + 1000] ++;}Set<Integer> seen = new HashSet<>();for (int num : times) {if (num != 0 && !seen.add(num)) {return false;}}return true;

在这里插入图片描述
  实际上还可以优化,得到每个元素的次数后,可以遍历这个数组,将出现次数再次映射到一个bool数组中(最多出现1000次),需要注意的是要将0除去,同时某个元素找完了就不用要再判断了。

public boolean uniqueOccurrences(int[] arr) {int[] map = new int[2001];for (int x : arr) {map[x + 1000] ++;}boolean[] count = new boolean[1001];for (int x : arr) {int num = map[x + 1000];map[x + 1000] = 0;if (num != 0 && count[num]) {return false;}count[num] = true;}return true;}

在这里插入图片描述

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

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

相关文章

如何压缩图片大小?7个实用软件教你快速压缩图片大小

如何压缩图片大小&#xff1f;7个实用软件教你快速压缩图片大小 以下是七个实用的软件&#xff0c;可以帮助您快速压缩图片大小&#xff1a; 图片编辑助手&#xff1a;这是一款功能强大的图像处理软件&#xff0c;其中包含了图像压缩功能。您可以打开需要压缩的图片&#xf…

工业物联网解决方案:机房动环监控系统

工业物联网解决方案&#xff1a;机房动环监控系统 工业物联网&#xff08;IIoT&#xff09;作为数字化转型的关键驱动力&#xff0c;正深刻改变着各行各业的运作模式&#xff0c;其中机房动环监控系统是实现智能化运维管理的重要组成部分。该系统通过集成传感器技术、大数据分…

C++语法|可调用对象和函数对象

在本文中&#xff0c;我想先详细讲解C中的可调用对象和函数对象的定义&#xff0c;最后讲解二者的联系和区别 可调用对象 C中&#xff0c;可调用对象(Callable Object)是一个可以被调用执行的对象&#xff0c;类似于函数。任何类型的对象&#xff0c;主要的可调用对象有以下几…

macOS上使用qt creator编译调试ffmpeg.c

1 前言 上文macOS上将ffmpeg.c编译成Framework介绍了使用xocde将ffmpeg.c编译成Framework的方法&#xff0c;这里列举另外一种办法&#xff0c;就是用qt creator来完成这件事情。 编译环境如下&#xff1a; qt creator 9.0.2&#xff1b;ffmpeg release/6.1; 2 编译ffmpeg.c 大…

解决哈希冲突的方法总结

哈希冲突是指在哈希表中两个或多个键被哈希函数映射到了同一个位置上&#xff0c;造成数据存储冲突的情况。解决哈希冲突的常见方法包括以下几种&#xff1a; 开放定址法&#xff1a; 线性探测法&#xff1a;当发生冲突时&#xff0c;顺序地查找下一个空槽。 二次探测法&#x…

【算法】完成所有任务需要的最少轮数

题目 给你一个下标从 0 开始的整数数组 tasks &#xff0c;其中 tasks[i] 表示任务的难度级别。在每一轮中&#xff0c;你可以完成 2 个或者 3 个 相同难度级别 的任务。 返回完成所有任务需要的 最少 轮数&#xff0c;如果无法完成所有任务&#xff0c;返回 -1 。 解析 思…

2024 年 4 月区块链游戏研报:市场低迷中活跃用户数创新高

2024 年 4 月区块链游戏研报 作者&#xff1a;stellafootprint.network 数据来源&#xff1a;GameFi 研究页面 2024 年 4 月&#xff0c;Web3 游戏领域在经历 3 月创纪录的表现后&#xff0c;迎来了显著波动。比特币自历史高位回调&#xff0c;月跌幅达到 10.4%。与此同时&a…

Rabbitmq报unauthorized异常

问题&#xff1a; Caused by: java.lang.SecurityException: Attempt to deserialize unauthorized class cn.seczone.sscsp.common.model.TaskSbomMessageMq; add allowed class name patterns to the message converter or, if you trust the message orginiator, set envir…

IC卡16个扇区详解:揭秘智能卡的存储结构

目录标题 IC卡的基本结构扇区的划分扇区的功能扇区的安全性扇区的应用NFC卡和IC卡&#xff0c;从外观怎样区分总结 在智能卡的世界里&#xff0c;IC卡&#xff08;Integrated Circuit Card&#xff09;以其安全性和便捷性成为了现代生活中不可或缺的一部分。无论是用于支付、身…

react18【系列实用教程】JSX (2024最新版)

为什么要用 JSX&#xff1f; JSX 给 HTML 赋予了 JS 的编程能力 JSX 的本质 JSX 是 JavaScript 的语法扩展&#xff0c;浏览器本身不能识别&#xff0c;需要通过解析工具&#xff08;如babel&#xff09;解析之后才能在浏览器中运行。 bable 官网可以查看解析过程 JSX 的语法 …

PCie协议之-TLP Header详解(一)

✨前言&#xff1a; 在PCIe通信过程中&#xff0c;事务层数据包&#xff08;Transaction Layer Packets&#xff0c;简称TLP&#xff09;扮演着非常重要的角色。TLP用于在设备之间传递数据和控制信息&#xff0c;它们是PCIe的基本信息传输单元。 TLP可分为几个部分&#xff0c…

打家劫舍问题(线性,环形

打家劫舍问题&#xff08;根据递推公式来初始化 偷i和不偷i两种情况 如果连成环&#xff0c;考虑首元素就不考虑尾元素&#xff0c;考虑尾元素就不考虑首元素 线性问题代码 class Solution {public int rob(int[] nums) {int lennums.length;int[] dpnew int[len];//记录最…

Redis缓存降级

当访问量剧增、服务出现问题&#xff08;如响应时间慢或不响应&#xff09;或非核心服务影响到核心流程的性能时&#xff0c;仍然需要保证服务还是可用的&#xff0c;即使是有损服务。系统可以根据一些关键数据进行自动降级&#xff0c;也可以配置开关实现人工降级。 缓存降级…

Windows Server 2022 环境下WEB和DNS服务器配置方法

目录 实验名称&#xff1a;WEB和DNS服务器配置实验目的实验原理&#xff1a;主要设备、器材&#xff1a;实验内容&#xff1a;配置本地WEB站点配置本地DNS服务器 实验名称&#xff1a;WEB和DNS服务器配置 实验目的 掌握 Windows Server 2022 环境下WEB服务器配置方法 掌握 Wi…

Idea 核心编程快捷键-简洁版

Idea 实际开发中必备的快捷键功能整理&#xff0c;欢迎补充。 如果由于Idea版本默认快捷键不对&#xff0c;建议自己根据功能谷歌一下。 编程时提速 功能WindowsMac记忆提示移除当前文件中的没有调用的类Ctrl Option O进入某个类里面Ctrl 左键单击Command 左键单击回到光…

C# 下载安装,使用OfficeOpenXml

下载安装OfficeOpenXml模块 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.IO; using System.Linq; using System.Reflection.Emit; using System.Text; using System.Text.RegularEx…

使用RESTful API构建 web 应用程序

RESTful API是一种基于HTTP协议的架构风格&#xff0c;用于设计网络应用程序的 API。它强调使用标准的HTTP方法&#xff08;如GET、POST、PUT和DELETE&#xff09;对资源进行操作&#xff0c;并使用统一的资源标识符&#xff08;URI&#xff09;来唯一标识每个资源。RESTful AP…

基于spingboot,vue线上辅导班系统

目录 项目介绍 图片展示 运行环境 获取方式 项目介绍 权限划分&#xff1a;用户&#xff0c;管理员 具有前后台展示&#xff0c;前台供用户使用&#xff1b;用户具有自己的后台&#xff0c;查看自己的老师课程等&#xff1b;管理员具有最大的权限后台。 用户&#xff1a…

set the environment variable `TF_ENABLE_ONEDNN_OPTS=0`

TF_ENABLE_ONEDNN_OPTS是配合log输出信息来用。 os.environ["TF_CPP_MIN_LOG_LEVEL"]的取值有四个&#xff1a;0&#xff0c;1&#xff0c;2&#xff0c;3&#xff0c;分别和log的四个等级挂钩&#xff1a;INFO&#xff0c;WARNING&#xff0c;ERROR&#xff0c;FATA…

代码随想录第七天打卡|454.四数相加II, 383. 赎金信 ,15. 三数之和 , 18. 四数之和

454.四数相加II Python class Solution:def fourSumCount(self, nums1: List[int], nums2: List[int], nums3: List[int], nums4: List[int]) -> int:nlen(nums1)res0Mapdefaultdict(int)for i in range(n):for j in range(n):Map[nums1[i]nums2[j]]1for i in range(n):fo…