题目难度:简单 如果任意一值在数组中出现至少两次,函数返回 true 。如果数组中每个元素都不相同,则返回 false 。 示例1: 示例 2: 方法一:快慢指针 方法二:哈希题目
给定一个整数数组,判断是否存在重复元素。输入: [1,2,3,1] 输出: true
输入: [1,2,3,4] 输出: false
解题
我是这样想的,先进行排序,如果存在相同元素的话,那么前一个元素就会和后一个元素相同,这样就把问题转换为第二天的去除相同元素的问题了class Solution { public boolean containsDuplicate(int[] nums) { Arrays.sort(nums); int fast = 1; int slow = 0; for(; fast < nums.length ; fast++){ if(nums[slow++] == nums[fast]){ return true; } } return false; } }
用set集合,最主要的就是:Set集合不允许包含相同的元素,如果试图把两个相同元素加入同一个Set集合中,则添加操作失败,add()方法返回false,且新元素不会被加入。
JAVA中的Set函数class Solution { public boolean containsDuplicate(int[] nums) { Set<Integer> set = new HashSet<>(); for (int n : nums) { if (!set.add(n)) { return true; } } return false; } }
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算