448. 找到所有数组中消失的数字https://leetcode-cn.com/problems/find-all-numbers-disappeared-in-an-array/
对着官方题解做出来的
int* findDisappearedNumbers(int* nums, int numsSize, int* returnSize){
for(int i = 0; i<numsSize;++i){
int x = (nums[i] - 1) % numsSize; //得到num的下标
nums[x] += numsSize; //将num-1下标位置的值+numsSize
}
int *hash = (int *)malloc(sizeof(int)*numsSize);
*returnSize = 0;
for(int i = 0; i < numsSize;++i){
if(nums[i]<= numsSize){ //nums的范围是[0,n]经循环判断的后得到的下标从0开始
//但值从1开始,所以i要+1。
hash[(*returnSize)++] = i + 1; //i位置上因为未出现过所以一定比numsSize小
}
}
return hash;
}