力扣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!

相关推荐
砍材农夫5 小时前
spring-ai 第四多模态API
java·人工智能·spring
她说..8 小时前
Java 对象相关高频面试题
java·开发语言·spring·java-ee
汀、人工智能8 小时前
[特殊字符] 第21课:最长有效括号
数据结构·算法·数据库架构·图论·bfs·最长有效括号
Boop_wu8 小时前
[Java 算法] 字符串
linux·运维·服务器·数据结构·算法·leetcode
庞轩px8 小时前
深入理解 sleep() 与 wait():从基础到监视器队列
java·开发语言·线程··wait·sleep·监视器
故事和你918 小时前
洛谷-算法1-2-排序2
开发语言·数据结构·c++·算法·动态规划·图论
Fcy6489 小时前
算法基础详解(三)前缀和与差分算法
算法·前缀和·差分
皮皮林5519 小时前
面试官:ZSet 的底层实现是什么?
java
kvo7f2JTy9 小时前
基于机器学习算法的web入侵检测系统设计与实现
前端·算法·机器学习
码云数智-大飞9 小时前
C++ RAII机制:资源管理的“自动化”哲学
java·服务器·php