找出数组中重复的数字

454 阅读1分钟

哈哈,我又来了。。。。今天项目搭建也不知道电脑抽了什么风,自动配置总是出错,clean好几次都不管用,气得我关了电脑重启,结果好使了。。。咱啥也不知道,咱也不敢问的,哎,脑壳壳疼。

今天的算法题目力扣简单题第一个,也是我上次做题唯一会的(哈哈,插会腰先),我也不会啥高级的方法,先从自己会的,整完简单题咱在试试高级的方法,现在那玩意我还玩不来

  找出数组中重复的数字

我的思路:统计一下数组中各元素的出现次数呗,大于1的都输出

不多叨叨,代码实现

  public class Test{
  
      //随便给几个数
      int[] count = {1,2,2,3,4,8,7,7};
      
      //创建一个HashMap来存放出现次数,key-数字,value-出现次数
      Map<Integer,Integer> map = new HashMap<>();
      
      //遍历数组
      for(int i = 0;i < count.length;i++){
          //跟昨天那道题步骤一样,没啥变化,懒死我了,用手里会用的,先不管他复杂度
          //记录value值
          Integer num = map.get(count[i]);
          //判断
          if(num == null){
              map.put(count[i],1)
          }else{
              map.put(count[i],num + 1 );
          }
      }
      //遍历集合,获取重复出现的数字
      for(Integer x : map.KeySet()){
          if(map.get(x) > 1){
              System.out.println(x);
          }
      }
      
  }

大概就是这样了,先吃饭,吃完饭接着敲毕设。。。