• 力扣217. 存在重复元素


    题目:

    给定一个整数数组,判断是否存在重复元素。

    如果任意一值在数组中出现至少两次,函数返回 true 。如果数组中每个元素都不相同,则返回 false 。
    示例 1:

    输入: [1,2,3,1]
    输出: true

    方式一:

    解题思路:
    先进行排序,比较相邻两个元素,有相同的就结束循环。
    代码:

      public boolean containsDuplicate(int[] nums) {
        Arrays.sort(nums);
        boolean flag=false;
        for (int i=1;i<nums.length;i++){
            if (nums[i]==nums[i-1]){
                flag=true;
                break;
            }else {
                flag=false;
            }
        }
        return flag;
    }
    

    方式二:

    解题思路:
    set中存放不重复的元素,将数组中的元素放入set,如果set的大小不等于数组的长度,则返回true。
    代码:

       public boolean containsDuplicate(int[] nums) {
        HashSet<Integer> hashSet = new HashSet<>();
        for (int i=0;i<nums.length;i++){
            hashSet.add(nums[i]);
        }
        return nums.length==hashSet.size()?false:true;
    }
  • 相关阅读:
    $NOIP2018$赛道修建
    $NOIP2005$过河
    $NOIP2014$飞扬的小鸟
    $[SCOI2014]$方伯伯的玉米田
    大吉大利,晚上吃鸡!
    $HNOI2005$星际贸易
    $CF1142B$ $Lynyrd Skynyrd$
    $SDOI2015$排序
    $NOIP2003$侦探推理
    Build 2016概览
  • 原文地址:https://www.cnblogs.com/ghlz/p/13901799.html
Copyright © 2020-2023  润新知