1. 程式人生 > 實用技巧 >力扣(陣列)——陣列中重複的數字

力扣(陣列)——陣列中重複的數字

力扣(陣列)——陣列中重複的數字


JERRY_Z ~ 2020 / 9 / 7
轉載請註明出處!❤️


題目

找出陣列中重複的數字。

在一個長度為 n 的陣列 nums 裡的所有數字都在 0~n-1 的範圍內。陣列中某些數字是重複的,但不知道有幾個數字重複了,也不知道每個數字重複了幾次。請找出陣列中任意一個重複的數字。

示例 1:

輸入:
[2, 3, 1, 0, 2, 5, 3]
輸出:2 或 3

限制:

2 <= n <= 100000

來源:力扣(LeetCode)
連結:https://leetcode-cn.com/problems/shu-zu-zhong-zhong-fu-de-shu-zi-lcof


著作權歸領釦網路所有。商業轉載請聯絡官方授權,非商業轉載請註明出處。

程式碼

法一:

int findRepeatNumber(int *nums, int numsSize)
{
    int i = 0;
    char *tmp = calloc(numsSize, sizeof(int));

    for (i = 0; i < numsSize; i++) {
        if (0 == tmp[nums[i]]) {
            tmp[nums[i]] = 1;
        }
        else {
            return nums[i];
        }
    }

    return -1;
}

交流方式:

❤️ ❤️ ❤️

QQ: 1846334075

WeChat: zhoujirui54

CSDN:https://blog.csdn.net/D_si_God

Cnblogs:https://www.cnblogs.com/JERRY-Z-J-R/

GitHub:https://github.com/JERRY-Z-J-R

Gitee:https://gitee.com/JERRY-Z-J-R