leetcode448:找到数组中所有消失的数字

找到数组中所有消失的数字

给你一个含 n 个整数的数组 nums ,其中 nums[i] 在区间 [1, n] 内。请你找出所有在 [1, n] 范围内但没有出现在 nums 中的数字,并以数组的形式返回结果。

java 复制代码
public List<Integer> findDisappearedNumbers(int[] nums) {
        for (int i = 0; i < nums.length; i++) {
            int index = Math.abs(nums[i]);
            nums[index - 1] = nums[index - 1] < 0 ? nums[index - 1] : -nums[index - 1];
        }
        List<Integer> list = new ArrayList<>();
        for (int i = 0; i < nums.length; i++) {
            if(nums[i]>0){
                list.add(i+1);
            }
        }
        return list;
    }

标记索引法

相关推荐
乐之者v9 分钟前
AI编程-- codex并行开发需求
java
weixin_5206498713 分钟前
C#线程底层原理知识
java·开发语言
xieliyu.18 分钟前
Java手搓数据结构:从零模拟实现单向无头非循环链表
java·数据结构·学习·链表
0xDevNull21 分钟前
队列(Queue)实战教程:从原理到架构应用
java·开发语言·后端
再写一行代码就下班32 分钟前
word模版导出(占位符方式)
java·开发语言·word
懒得起名_yyf33 分钟前
AI智能体Skills全面入门指南
java
敖正炀33 分钟前
集合-List-ArrayList
java
BING_Algorithm37 分钟前
JDBC核心教程
java·后端·mysql
京师20万禁军教头37 分钟前
33面向对象(中级)-object类详解
java