当前位置:网站首页>leetcode 448. Find All Numbers Disappeared in an Array 找到所有数组中消失的数字(简单)
leetcode 448. Find All Numbers Disappeared in an Array 找到所有数组中消失的数字(简单)
2022-08-03 20:05:00 【okokabcd】
一、题目大意
标签: 数组
https://leetcode.cn/problems/find-all-numbers-disappeared-in-an-array
给你一个含 n 个整数的数组 nums ,其中 nums[i] 在区间 [1, n] 内。请你找出所有在 [1, n] 范围内但没有出现在 nums 中的数字,并以数组的形式返回结果。
示例 1:
输入:nums = [4,3,2,7,8,2,3,1]
输出:[5,6]
示例 2:
输入:nums = [1,1]
输出:[2]
提示:
- n == nums.length
- 1 <= n <= 105
- 1 <= nums[i] <= n
- 进阶:你能在不使用额外空间且时间复杂度为 O(n) 的情况下解决这个问题吗? 你可以假定返回的数组不算在额外空间内。
二、解题思路
把所有重复出现的位置进行标记,然后再遍历一遍数组,即可找到没有出现过的数字。进一步优化,可以直接对原数组进行标记:把重复出现的数字在原数组出现的位置设为负数,最后仍然为正数的位置即为没有出现过的数。
三、解题方法
3.1 Java实现
public class Solution {
public List<Integer> findDisappearedNumbers(int[] nums) {
for (int num : nums) {
// 这个地方要注意 -1,数组下标从0开始
int pos = Math.abs(num) - 1;
if (nums[pos] > 0) {
nums[pos] = -nums[pos];
}
}
List<Integer> ans = new ArrayList<>();
for (int i = 0; i < nums.length; i++) {
if (nums[i] > 0) {
ans.add(i + 1);
}
}
return ans;
}
}
四、总结小记
- 2022/8/3 下面做按数据结构开始做,先从数组开始
边栏推荐
猜你喜欢

Matlab paper illustration drawing template No. 42 - bubble matrix diagram (correlation coefficient matrix diagram)

RNA核糖核酸修饰荧光染料|HiLyte Fluor 488/555/594/647/680/750标记RNA核糖核酸

Pytorch GPU 训练环境搭建

边缘盒子+时序数据库,美的数字化平台 iBuilding 背后的技术选型
[email protected] 594/[email prote"/>RNA核糖核酸修饰Alexa 568/[email protected] 594/[email prote

2022 CCF中国开源大会会议通知(第三轮)

云服务器如何安全使用本地的AD/LDAP?

tRNA甲基化偶联3-甲基胞嘧啶(m3C)|tRNA-m3C (3-methylcy- tidine)

转运RNA(tRNA)甲基化修饰7-甲基胞嘧啶(m7C)|tRNA-m7G

后台图库上传功能
随机推荐
数学之美 第六章——信息的度量和作用
MapReduce介绍及执行过程
redis常用命令,HSET,XADD,XREAD,DEL等
The sword refers to Offer II 044. The maximum value of each level of the binary tree-dfs method
Benchmarking Lane-changing Decision-making for Deep Reinforcement Learning
软件测试基本流程有哪些?权威的第三方软件检测机构推荐
转运RNA(tRNA)甲基化修饰7-甲基胞嘧啶(m7C)|tRNA-m7G
Internet Download Manager简介及下载安装包,IDM序列号注册问题解决方法
codeforces:C. Maximum Subrectangle【前缀和 + 贪心 + 最小子数组和】
NNLM、RNNLM等语言模型 实现 下一单词预测(next-word prediction)
Anaconda 虚拟环境迁移
Statistical machine learning 】 【 linear regression model
模板字符串概述
RNA核糖核酸修饰RNA-HiLyte FluorTM 405荧光染料|RNA-HiLyte FluorTM 405
多模态 参考资料汇总
从文本匹配到语义相关——新闻相似度计算的一般思路
高效目标检测:动态候选较大程度提升检测精度(附论文下载)
Detailed steps for tensorflow-gpu2.4.1 installation and configuration
微导纳米IPO过会:年营收4.28亿 君联与高瓴是股东
【飞控开发高级教程3】疯壳·开源编队无人机-定高、定点、悬停