博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[by暴走的山交君][剑指offer系列] 03 数组中重复的数字
阅读量:3950 次
发布时间:2019-05-24

本文共 869 字,大约阅读时间需要 2 分钟。

找出数组中重复的数字。

在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。

示例 1:输入:[2, 3, 1, 0, 2, 5, 3]输出:2 或 3

java解法一:

class Solution {
public int findRepeatNumber(int[] nums) {
int[] arr = new int[nums.length]; for(int i=0; i
1) return nums[i]; } return -1; }}

创建一个新的数组存储原数组中的数字 , 原数组的数字为新数组的下标,每循环一次对应下标了数字就加一,就能知道什么数字,重复了几次

java解法二:

class Solution {
public int findRepeatNumber(int[] nums) {
Set
set=new HashSet
(); int repeat=-1; for(int num : nums){
if(!set.add(num)){
repeat=num; break; } } return repeat; }}

创建一个set集合(无序 , 唯一) , 将值放入,第一次放入正常,第二次如果放入重复的数字,会错误,如果出现错误则证明这个值重复,然后就break跳出循环,循环外用变量repeat存放值,最后返回repeat

看到最后的帮忙

点个👍🙏 谢谢,这个对我真的很重要!

在这里插入图片描述

转载地址:http://yqqwi.baihongyu.com/

你可能感兴趣的文章
Js实现炫酷仿抖罗盘时钟------Sestid
查看>>
vivo官网鼠标触碰图片拉长------Sestid
查看>>
canvas画布实现的集中效果
查看>>
Js实现点击置顶效果(带动画)
查看>>
Js实现input全选、全不选、反选功能------Sestid
查看>>
纯css实现好看的背景------Sestid
查看>>
为什么我的CSDN上都是开关灯??????Js实现开灯关灯特效
查看>>
Js实现生成自定义输入行列宽高表格------Sestid
查看>>
Js实现购物车加减,价格计算等功能
查看>>
Js自定义快捷键并实现上下左右移动
查看>>
面试看这里!!!2020年前端面试知识点(持续更新)
查看>>
纯CSS实现轮播图------Sestid
查看>>
CSS实现自动播放相册------Sestid
查看>>
JavaScript四种基础的排序方法
查看>>
这里有美女!!!!抖音上很火的3D立体动态相册的实现(纯CSS)
查看>>
一张图让您看懂git,看不懂我也没办法了。。。。。。。。
查看>>
Es6字符串和数组的新方法---自己在控制台都可以看到
查看>>
喜欢NBA的朋友快来这里看第一阶段的全明星投票结果!!!(更新到第二阶段、第三阶段)
查看>>
TCP的三次握手与四次挥手看完这篇文章您要是不理解,那我也没什么办法了!!!
查看>>
跨域!!!跨域!!!朋友们!看这里你就什么都懂了!
查看>>