我是靠谱客的博主 伶俐大象,这篇文章主要介绍算法练习 - 数组中重复的数字【JAVA】,现在分享给大家,希望可以做个参考。

找出数组中重复的数字。

在一个长度为 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

  • HashSet不允许重复元素出现

在这里插入图片描述

class Solution {
    public int findRepeatNumber(int[] nums) {
        Set<Integer> numSet = new HashSet<>();
        for(int num: nums) {
            if(!numSet.add(num) & (num >= 2 || num <= 100000)) {
                return num;
            }
        }
        return -1;
    }
}

最后

以上就是伶俐大象最近收集整理的关于算法练习 - 数组中重复的数字【JAVA】的全部内容,更多相关算法练习内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(60)

评论列表共有 0 条评论

立即
投稿
返回
顶部