给定一个整数数组,找出其中两个数相加等于目标值

2018-07-11  本文已影响105人  Leon_hy

给定一个整数数组,找出其中两个数相加等于目标值
例如:给定数组及目标值 nums = [2,7,11,15] ,target = 9
因为nums[0] + nums[1] = 2 + 7 = 9
返回[0,1]
利用HashMap

private int[] findData(int[] array,int target){
   int[] result={-1,-1};
  HashMap<Integer,Integer> map = new HashMap<Integer,Integer>();
 for(int i=0;i<array.length;i++){
      map.put(array[i],i); 
     }

 for(int i=0;i<array.length;i++){
      int two = target-array[i];
     if(map.containKey(two)&&target!=2*two){
          result[0]=i;
         result[1]=map.get(two);
         break;
   }
 }
 retrurn result;
}
上一篇下一篇

猜你喜欢

热点阅读