数组中重复的数字

数组中重复的数字

http://www.nowcoder.com/questionTerminal/623a5ac0ea5b4e5f95552655361ae0a8

import java.util.*;
public class Solution {
    // Parameters:
    //    numbers:     an array of integers
    //    length:      the length of array numbers
    //    duplication: (Output) the duplicated number in the array number,length of duplication array is 1,so using duplication[0] = ? in implementation;
    //                  Here duplication like pointor in C/C++, duplication[0] equal *duplication in C/C++
    //    这里要特别注意~返回任意重复的一个,赋值duplication[0]
    // Return value:       true if the input is valid, and there are some duplications in the array number
    //                     otherwise false
    public boolean duplicate(int numbers[],int length,int [] duplication) {
      //数组范围为0 - n-1,每遍历到一个数字index,将index索引:array[index]+length
      //如若再有索引index,那么array[index]必大于等于length
      for(int i=0;i<length;i++){
          int index = numbers[i]%length;//获取当前元素要映射到的索引index
          if(numbers[index]>=length){
              duplication[0]=index;
              return true;
          }
          numbers[index]+=length;
      }
      return false;
      //hashmap方法
     /* Map<Integer,Integer> map = new HashMap<Integer,Integer>();
      boolean flag = false;
      for(int i=0;i<length;i++){
          if(!map.containsKey(numbers[i]))map.put(numbers[i],1);
          else{
              flag = true;
              duplication[0]=numbers[i];
              break;
          }
      }
      return flag;*/
    }
}
全部评论

相关推荐

02-17 20:43
西北大学 Java
醉蟀:别浪费时间。老板是一个想入行互联网的新人。去年6 7月boss上面看到的。他把所有人都拉到一个微信群,然后一个一个面,自己也在学技术。公司就是一个小区里面租的两间房。都没有买电脑啥的。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
正在热议
更多
# 听劝,这个简历怎么改 #
14086次浏览 182人参与
# 面试被问“你的缺点是什么?”怎么答 #
6359次浏览 98人参与
# 水滴春招 #
16395次浏览 346人参与
# 入职第四天,心情怎么样 #
11310次浏览 63人参与
# 租房找室友 #
8021次浏览 53人参与
# 读研or工作,哪个性价比更高? #
26152次浏览 356人参与
# 职场新人生存指南 #
199211次浏览 5509人参与
# 参加完秋招的机械人,还参加春招吗? #
26977次浏览 276人参与
# 文科生还参加今年的春招吗 #
4114次浏览 31人参与
# 简历无回复,你会继续海投还是优化再投? #
48624次浏览 561人参与
# 你见过最离谱的招聘要求是什么? #
144719次浏览 829人参与
# 如果重来一次你还会读研吗 #
155716次浏览 1706人参与
# 机械人选offer,最看重什么? #
69077次浏览 449人参与
# 选择和努力,哪个更重要? #
44292次浏览 493人参与
# 如果再来一次,你还会学硬件吗 #
103645次浏览 1245人参与
# 如果你有一天可以担任公司的CEO,你会做哪三件事? #
20520次浏览 413人参与
# 招聘要求与实际实习内容不符怎么办 #
46727次浏览 494人参与
# 22届毕业,是读研还是拿外包offer先苟着 #
4652次浏览 27人参与
# 你们的毕业论文什么进度了 #
901248次浏览 8961人参与
# 软开人,你觉得应届生多少薪资才算合理? #
81375次浏览 496人参与
# 国企还是互联网,你怎么选? #
109191次浏览 853人参与
牛客网
牛客企业服务