剑指 Offer 03. 数组中重复的数字
难度简单 208 收藏分享切换为英文接收动态反馈
找出数组中重复的数字。
在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。
示例 1:
输入: [2, 3, 1, 0, 2, 5, 3] 输出:2 或 3
限制:
2 <= n <= 100000
题目链接:
Java 实现:
package org.ben.powerbutton.SeventhNovember;
import java.util.Arrays;
/**
* @Author: Ben
* @Date: 2020/11/7 16:16
*/
public class Test1 {
/**
* 找出数组中重复的数字。
*
* 在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。
* 示例:
* 输入:[2, 3, 1, 0, 2, 5, 3]
* 输出:2 或 3
* 题目链接:
* https://leetcode-cn.com/problems/shu-zu-zhong-zhong-fu-de-shu-zi-lcof/
* @param args
*/
public static void main(String[] args) {
int nums[]={0, 1, 2, 3, 4, 11, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15};
new Test1().findRepeatNumber(nums);
}
public int findRepeatNumber(int[] nums) {
Arrays.sort(nums);
for (int i = 0; i <nums.length ; i++) {
if (nums[i]==nums[i+1]){
return nums[i];
}
}
return 0;
}
}
C#实现:
using System;
namespace powerbutton
{
public class Test1
{
public int FindRepeatNumber(int[] nums) {
Array.Sort(nums);
for (int i = 0; i < nums.Length; i++)
{
if (nums[i] == nums[i + 1])
{
Console.WriteLine(nums[i]);
return nums[i];
}
}
return 0;
}
}
}
using System;
namespace powerbutton
{
class Program
{
static void Main(string[] args)
{
int[] nums=new int[16];
nums[0] = 0;
nums[1] = 1;
nums[2] = 2;
nums[3] = 3;
nums[4] = 4;
nums[5] = 11;
nums[6] = 6;
nums[7] = 7;
nums[8] = 8;
nums[9] = 9;
nums[10] = 10;
nums[11] = 11;
nums[12] = 12;
nums[13] = 13;
nums[14] = 14;
nums[15] = 15;
new Test1().FindRepeatNumber(nums);
}
}
}
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于