剑指 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); } } }
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于