Java教程

leetcode刷题笔记--Java篇

本文主要是介绍leetcode刷题笔记--Java篇,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

文章目录

  • 1.剑指offer03 数组中的重复数字

1.剑指offer03 数组中的重复数字

找出数组中重复的数字。

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

示例 1:

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

思路:
使用哈希表,java当中有的数据结构

算法流程:
初始化: 新建 HashSet ,记为 dicdic ;
遍历数组 numsnums 中的每个数字 numnum :
当 numnum 在 dicdic 中,说明重复,直接返回 numnum ;
将 numnum 添加至 dicdic 中;
返回 -1−1 。本题中一定有重复数字,因此这里返回多少都可以。

这篇关于leetcode刷题笔记--Java篇的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!