首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
数组中重复的数字
[编程题]数组中重复的数字
热度指数:174971
时间限制:C/C++ 1秒,其他语言2秒
空间限制:C/C++ 256M,其他语言512M
算法知识视频讲解
在一个长度为n的数组里的所有数字都在0到n-1的范围内。 数组中某些数字是重复的,但不知道有几个数字是重复的。也不知道每个数字重复几次。请找出数组中任意一个重复的数字。 例如,如果输入长度为7的数组[2,3,1,0,2,5,3],那么对应的输出是2或者3。存在不合法的输入的话输出-1
数据范围:
进阶:时间复杂度
,空间复杂度
示例1
输入
[2,3,1,0,2,5,3]
输出
2
说明
2或3都是对的
马上挑战
算法知识视频讲解
提交运行
算法知识视频讲解
添加笔记
求解答(6)
邀请回答
收藏(728)
分享
提交结果有问题?
272个回答
419篇题解
开通博客
鸠摩罗什
发表于 2021-07-02 23:56:34
精华题解
描述 在一个长度为n的数组里的所有数字都在0到n-1的范围内。 数组中某些数字是重复的,但不知道有几个数字是重复的。也不知道每个数字重复几次。请找出数组中任一一个重复的数字。 例如,如果输入长度为7的数组[
展开全文
漫漫云天自翱翔
发表于 2021-06-20 13:04:09
精华题解
题解一:暴力(TLE超时,不能AC此题)解题思路:第一层循环依次选取一个锚点数字,第二层循环遍历剩下的数字,当找到相同的两个数字,退出循环,返回正确的结果。 复杂度分析:时间复杂度:O(n^2),两层循环空间复杂度:O(1)代码如下: class Solution { public: /**
展开全文
蒙牛麦片
发表于 2021-06-24 09:38:33
精华题解
JZ50 数组中重复的数字 题意分析: 找出数组中重复的元素。 示例输入:[2,3,1,0,2,5,3]返回:数组中2和3都出现了多次,返回2或3都可以。 题解一(map统计): 我们使用map<int,int>进行统计即可。如果m[i]>0,说明元素i是我们要的结果。如果m[i]
展开全文
咪咪虾条001
发表于 2021-02-26 19:51:54
方法1:对于重复性问题可以想到set,遍历数组依次加入集合,若集合中存在该元素则直接返回该元素,否则将该元素加入集合: public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * *
展开全文
jieleejie
发表于 2021-03-20 01:09:39
利用set的不重复特性。把数组中的元素一个个添加到set中,如果某一元素添加过后,set的长度没有改变,说明该元素重复! let mySet = new Set(); for (let i = 0; i < numbers.length; i++){ let setLe
展开全文
高非凡
发表于 2021-04-30 20:36:34
import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param numbers int整型一维数组
展开全文
牛客题解官
发表于 2022-04-25 18:59:25
题目的主要信息: 一个长度为nnn的数组中只有0到n−1n-1n−1的数字 需要找出其中任意一个重复出现的数字 举一反三: 学习完本题的思路你可以解决如下题目: JZ56. 数组中只出现一次的两个数字 JZ50. 第一个只出现一次的字符 JZ75. 字符流中第一个不重复的字符 方法一:位置重排(
展开全文
牛客45292383号
发表于 2022-03-13 21:48:18
/** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param numbers int整型一维数组 * @param numbersLen int numbers数组长度 * @return int整型 * * C语言声明定义全局变
展开全文
1666
发表于 2021-03-26 23:06:18
//解题思路 /*替换法(O(n),O(1)) 数组存放原则:numbers[i] = i 遍历数组所有元素,交换不符合数组存放原则的元素: 例如[2,3,1,0,2] 遍历0位元素2:(交换0位元素2和2位元素1)->[1,3,2,0,2] 遍历0位元素1:(交换0位
展开全文
designeer
发表于 2021-11-14 09:49:29
# # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # # @param numbers int整型一维数组 # @return int整型 # class Solutio
展开全文
牛客11111111133号
发表于 2022-02-09 14:40:56
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param numbers int整型一维数组 * @return int整型 */ function duplicate( numbers ) { // write code here
展开全文
好好刷题,积极向上
发表于 2022-02-25 22:25:16
import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param numbers int整型一维数组
展开全文
牛客709025891号
发表于 2022-02-22 21:55:38
法一,使用Set 一次遍历,遍历的时候添加元素,如果add返回为false,则此元素重复; public int duplicate (int[] numbers) { // write code here Set<Integer> set = n
展开全文
问题信息
数组
上传者:
牛客301499号
难度:
272条回答
728收藏
8913浏览
热门推荐
通过挑战的用户
查看代码
松林子木
2023-03-08 10:36:15
好菜鸭
2023-02-20 21:07:50
SanQi
2023-01-27 17:25:38
木木不想做灯泡
2023-01-09 17:44:40
ZzzGlue
2023-01-05 20:20:34
相关试题
请画出在包含 14 个结点的二项堆...
高级算法
评论
(1)
如图 1 表示使用快表(页表)的虚...
编程基础
评论
(1)
对于我们来说,谁是好的顾客?
销售常识
评论
(1)
小红书用户在不同使用场景下,对内容...
需求分析
评论
(1)
订单表order_table全部记...
查找
数据库
数据分析
SQL
评论
(2)
数组中重复的数字
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题
import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param numbers int整型ArrayList * @return int整型 */ public int duplicate (ArrayList
numbers) { // write code here } }
class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param numbers int整型vector * @return int整型 */ int duplicate(vector
& numbers) { // write code here } };
#coding:utf-8 # # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # # @param numbers int整型一维数组 # @return int整型 # class Solution: def duplicate(self , numbers ): # write code here
using System; using System.Collections.Generic; class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param numbers int整型一维数组 * @return int整型 */ public int duplicate (List
numbers) { // write code here } }
/** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param numbers int整型一维数组 * @return int整型 */ function duplicate( numbers ) { // write code here } module.exports = { duplicate : duplicate };
# # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # # @param numbers int整型一维数组 # @return int整型 # class Solution: def duplicate(self , numbers: List[int]) -> int: # write code here
package main import "fmt" /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param numbers int整型一维数组 * @return int整型 */ func duplicate( numbers []int ) int { // write code here }
/** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param numbers int整型一维数组 * @param numbersLen int numbers数组长度 * @return int整型 */ int duplicate(int* numbers, int numbersLen ) { // write code here }
# # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # # @param numbers int整型一维数组 # @return int整型 # class Solution def duplicate(numbers) # write code here end end
object Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param numbers int整型一维数组 * @return int整型 */ def duplicate(numbers: Array[Int]): Int = { // write code here } }
object Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param numbers int整型一维数组 * @return int整型 */ fun duplicate(numbers: IntArray): Int { // write code here } }
import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param numbers int整型一维数组 * @return int整型 */ public int duplicate (int[] numbers) { // write code here } }
/** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param numbers int整型一维数组 * @return int整型 */ export function duplicate(numbers: number[]): number { // write code here }
public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param numbers int整型一维数组 * @return int整型 */ func duplicate ( _ numbers: [Int]) -> Int { // write code here } }
struct Solution{ } impl Solution { fn new() -> Self { Solution{} } /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param numbers int整型一维数组 * @return int整型 */ pub fn duplicate(&self, numbers: Vec
) -> i32 { // write code here } }
[2,3,1,0,2,5,3]
2