力扣41 缺失的第一个正数 Java版本

文章目录

  • 题目描述
  • 代码


题目描述

给你一个整数数组 nums,返回 数组 answer ,其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。

题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。

请 不要使用除法,且在 O(n) 时间复杂度内完成此题。

示例 1:

输入: nums = [1,2,3,4]
输出: [24,12,8,6]
示例 2:

输入: nums = [-1,1,0,-3,3]
输出: [0,0,9,0,0]

提示:

2 <= nums.length <= 105
-30 <= nums[i] <= 30
保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内

进阶:你可以在 O(1) 的额外空间复杂度内完成这个题目吗?( 出于对空间复杂度分析的目的,输出数组 不被视为 额外空间。)

代码

class Solution {public int firstMissingPositive(int[] nums) {Set<Integer> set = new HashSet<>();//把nums[i]依次都放入集合当中,用来记录是否存在for (int i = 0; i < nums.length; i++) {if (nums[i]>0){set.add(nums[i]);}}//从1开始遍历,如果缺少了当前i这个正数就直接返回for (int i = 1; i <= nums.length+1; i++) {if (!set.contains(i)){return i;}}return 0;}
}

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

计算机毕业设计 基于Python内蒙古旅游景点数据分析系统 Django+Vue 前后端分离 附源码 讲解 文档

&#x1f34a;作者&#xff1a;计算机编程-吉哥 &#x1f34a;简介&#xff1a;专业从事JavaWeb程序开发&#xff0c;微信小程序开发&#xff0c;定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事&#xff0c;生活就是快乐的。 &#x1f34a;心愿&#xff1a;点…

采购系统价格沉淀:降低采购成本,提高采购效率

在当今竞争激烈的市场环境中&#xff0c;企业对于成本控制与效率提升的追求从未停歇。采购作为企业运营的重要一环&#xff0c;其成本直接关联到产品的定价与市场竞争力。因此&#xff0c;引入并优化采购系统价格沉淀机制&#xff0c;成为众多企业降低采购成本、提升采购效率的…

在Windows系统上安装的 zstd C++ 库

在Windows系统上安装的 zstd C 库 项目地址:安装步骤步骤一步骤二 效果 项目地址: https://github.com/facebook/zstd 经过观察发现,这个项目没有CMakeLists.txt,只有Makefile,但是Makefile在windows系统下没有什么用, 所以说,常规的方式安装不可取了 安装步骤 步骤一 往下…

JAVA零基础入门——高级教程之集合框架

目录 1. 关于集合框架 1.1 集合接口 1.2 集合实现类 1.3 集合算法及迭代器和比较器的使用 2. 数据结构 2.1 ArrayList 2.2 LinkedList 2.3 HashMap 2.4 HashSet 3. 迭代器 1. 关于集合框架 集合框架是使用数据结构&#xff08;参见本文2. 数据结构&#xff09;来满…

传奇外网架设全套教程带图文解说——Gom引擎

想要自己架设传奇服务器&#xff0c;但没有技术怎么办&#xff1f; 1. 架设前的准备工作 ①通过百度网盘下载版本、补丁、客户端和DBC2000。版本解压到D盘&#xff0c;客户端解压到D盘或是E盘&#xff0c;补丁先不解压 ②安装和配置DBC2000&#xff0c;DBC2000数据库下载及安…

【Linux】Linux项目自动化构建工具--make和makefile

简单解释一下&#xff1a; make&#xff1a;一条命令&#xff1b; makefile/Makefile&#xff1a;一个文件&#xff1b; make/Makefile用法 因为makefile/Makefile本质就是一个文件&#xff0c;所以编辑这个文件就是&#xff1a; vim Makefile 下面让我们根据一个例子来学习ma…

C++ Primer Plus(速记版)-高级主题

第十七章 用于大型程序的工具 C 解决问题规模多样&#xff0c;对复杂问题尤其需用异常处理、命名空间和多重继承增强代码管理、库整合和概念表达&#xff0c;以适应大规模编程对错误处理、模块组合及高级功能设计的高要求。 17.1. 异常处理 异常处理允许C程序中不同部分通过抛…

聚铭下一代智慧安全运营中心荣获CNNVD兼容性资质证书

近日&#xff0c;聚铭网络旗下安全产品——聚铭下一代智慧安全运营中心正式通过了国家信息安全漏洞库&#xff08;CNNVD&#xff09;兼容性认证测试&#xff0c;荣获国家信息安全漏洞库兼容性资质证书。 关于CNNVD兼容性 国家信息安全漏洞库&#xff08;CNNVD&#xff09;是…

初始MYSQL数据库(6)—— 事务

找往期文章包括但不限于本期文章中不懂的知识点&#xff1a; 个人主页&#xff1a;我要学编程(ಥ_ಥ)-CSDN博客 所属专栏&#xff1a; MYSQL 目录 事务的概念 事务的ACID特性 使用事务 查看支持事务的存储引擎 事务的语法 保存点 自动/手动提交事务 事务的隔离性和…

微信小程序开发第七课

一 人脸识别 1.1 使用步骤 # 1 注册百度人脸识别接口 https://cloud.baidu.com/product/face.html # 2 免费领取额度&#xff1a;https://console.bce.baidu.com/ai/#/ai/face/overview/index# 3 创建应用&#xff1a;https://console.bce.baidu.com/ai/#/ai/face/app/list# …

【自动驾驶】控制算法(八)横向控制Ⅳ | 调试与优化——让车辆行驶更平稳!

写在前面&#xff1a; &#x1f31f; 欢迎光临 清流君 的博客小天地&#xff0c;这里是我分享技术与心得的温馨角落。&#x1f4dd; 个人主页&#xff1a;清流君_CSDN博客&#xff0c;期待与您一同探索 移动机器人 领域的无限可能。 &#x1f50d; 本文系 清流君 原创之作&…

iPhone锁屏密码忘了怎么解锁?轻松解锁攻略来了

在日常生活中&#xff0c;智能手机已成为我们不可或缺的伙伴。其中&#xff0c;iPhone以其出色的性能和优雅的设计&#xff0c;赢得了全球用户的喜爱。然而&#xff0c;即便是最忠实的iPhone用户&#xff0c;也可能会遇到一些棘手的问题&#xff0c;比如忘记了锁屏密码。面对这…

【高效且应用广泛的排序 —— 快速排序算法】

高效且应用广泛的排序 —— 快速排序算法 快速排序是一种常用的排序算法&#xff0c;主要采用分治的思想。以下是对快速排序算法的详细介绍及代码示例&#xff1a; 快速排序的基本思路是&#xff0c;每次将一个位置上的数据归位&#xff0c;使得该数左边的所有数据都比该数小…

工业物联网关为工业生产数字化转型赋能-天拓四方

一、引言 在工业4.0的大背景下&#xff0c;工业物联网关成为了制造业转型升级的关键技术之一。它通过连接设备和系统&#xff0c;实现数据的实时采集、处理和传输&#xff0c;从而提升生产效率、降低成本、优化资源配置&#xff0c;并最终推动整个制造业的数字化进程。本文将详…

AJAX 入门 day3 XMLHttpRequest、Promise对象、自己封装简单版的axios

目录 1.XMLHttpRequest 1.1 XMLHttpRequest认识 1.2 用ajax发送请求 1.3 案例 1.4 XMLHttpRequest - 查询参数 1.5 XMLHttpRequest - 数据提交 2.Promise 2.1 Promise认识 2.2 Promise - 三种状态 2.3 案例 3.封装简易版 axios 3.1 封装_简易axios_获取省份列表 3…

Android OpenGLES2.0开发(二):环境搭建

世界没有悲剧和喜剧之分&#xff0c;如果你能从悲剧中走出来&#xff0c;那就是喜剧&#xff0c;如果你沉缅于喜剧之中&#xff0c;那它就是悲剧。——科马克麦卡锡《路》 ​​​ OpenGL ES环境搭建 Android 应用中使用 OpenGL ES 绘制图形&#xff0c;必须创建一个显示容器。…

Rust - 字符串:str 与 String

在其他语言中&#xff0c;字符串通常都会比较简单&#xff0c;例如 “hello, world” 就是字符串章节的几乎全部内容了。 但是Rust中的字符串与其他语言有所不同&#xff0c;若带着其他语言的习惯来学习Rust字符串&#xff0c;将会波折不断。 所以最好先忘记脑中已有的关于字…

【一起学NLP】Chapter2-学习神经网络

目录 学习神经网络损失函数Tip:One-hot向量导数与梯度Tip:严格地说链式法则计算图反向传播其他典型的运算结点乘法结点分支节点Repeat节点Sum节点MatMul节点 Tip:浅拷贝和深拷贝的差异梯度的推导和反向传播的实现Sigmoid层Affine层Softmax with Loss层 权重的更新——随机梯度下…

机械手末端快换技术:工业自动化的强大新动力

在飞速发展的工业自动化领域&#xff0c;机械手无疑是生产线上的关键成员&#xff0c;其性能与效率对整个生产流程的顺畅性与高效性起着至关重要的作用。而机械手末端快换技术&#xff0c;作为这一领域的创新性突破&#xff0c;正以其卓越的优势引领着工业生产的巨大变革。 机…

迷雾大陆免费辅助:强流派推荐攻略!VMOS云手机自动辅助挂机教程!

使用VMOS云手机辅助《迷雾大陆》游戏&#xff0c;让你的游戏体验更轻松高效。VMOS云手机专为《迷雾大陆》提供了定制版的云手机&#xff0c;内置游戏安装包&#xff0c;无需再次下载安装。同时&#xff0c;VMOS云手机支持免费的辅助工具&#xff0c;可以24小时不间断地辅助游戏…