力扣645.错误的集合

一点一点地刷,慢慢攻克力扣!!

王子公主请看题

集合 s 包含从 1 到 n 的整数。不幸的是,因为数据错误,导致集合里面某一个数字复制了成了集合里面的另外一个数字的值,导致集合 丢失了一个数字 并且 有一个数字重复 。给定一个数组 nums 代表了集合 S 发生错误后的结果。

请你找出重复出现的整数,再找到丢失的整数,将它们以数组的形式返回。

具体如下:

思路一:

建一个数组,存放nums数组每个元素出现个数,再一次for循环找到次数为0的对应下标就是我们的目标数字


int* findErrorNums(int* nums, int numsSize, int* returnSize) {

*returnSize = 2;

int* arr = (int*)calloc(sizeof(int), (numsSize + 1));

for (int i = 0; i < numsSize; i++)

arr[nums[i]]++;

for (int i = 1; i <= numsSize; i++)

{

if (arr[i] == 2)

arr[0] = i;

if (arr[i] == 0)

arr[1] = i;

}

return arr;

}

思路二

for循环双重嵌套,一个一个从1到n进行比较,找到没出现的数即可

AC!

相关推荐
程序猿ZhangSir6 分钟前
深入理解 BIO,NIO,AIO 三者的用途和区别?Select,poll,epoll 操作系统函数简介
java·spring·nio
智航GIS7 分钟前
6.2 while循环
java·前端·python
2201_757830877 分钟前
AOP核心概念
java·前端·数据库
为所欲为、Lynn9 分钟前
用FastJson的Filter自动映射枚举
java·spring boot
qq_336313939 分钟前
java基础-IO流(转换流)
java·开发语言·python
雪人.10 分钟前
JavaWeb经典面试题
java·服务器·前端·java面试题
mit6.82413 分钟前
右端点对齐|镜像复用
算法
扶苏-su13 分钟前
Java---IO流原理和分类
java·开发语言
JIngJaneIL19 分钟前
基于java+ vue学生成绩管理系统(源码+数据库+文档)
java·前端·数据库·vue.js·spring boot·后端
a程序小傲21 分钟前
得物Java面试被问:反射机制的原理和应用场景
java·python·面试