zoukankan      html  css  js  c++  java
  • 两数之和

    给定一个整数数列,找出其中和为特定值的那两个数。

    你可以假设每个输入都只会有一种答案,同样的元素不能被重用。

    示例:

    给定 nums = [2, 7, 11, 15], target = 9
    因为 nums[0] + nums[1] = 2 + 7 = 9
    所以返回 [0, 1]

     1 import java.util.HashMap;
     2 
     3 public class Main {
     4 
     5     public static void main(String[] args) {
     6         int[] array = new int[]{2, 7, 11, 15};
     7         int[] res = new int[2];
     8         Solution solution = new Solution();
     9         res = solution.twoSum(array, 9);
    10         System.out.println("res[0]:" + res[0] + " res[1]:" + res[1]);
    11     }
    12 }
    13 
    14 class Solution {
    15     public int[] twoSum(int[] nums, int target) {
    16         int[] res = new int[2];
    17         HashMap<Integer, Integer> map = new HashMap<Integer, Integer>();
    18         for (int k = 0; k < nums.length; k++) {
    19             map.put(nums[k], k);
    20         }
    21         for (int i = 0; i < nums.length; i++) {
    22             int t = target - nums[i];
    23             if (map.containsKey(t) && map.get(t) != i) {
    24                 res[0] = i;
    25                 res[1] = map.get(t);
    26                 break;
    27             }
    28         }
    29         return res;
    30     }
    31 }
    
    
    


  • 相关阅读:
    [转]我们都是花栗鼠
    学习Tkinter
    彻底理解Python切片
    信息隐藏技术
    Hex棋
    web服务器一些概念
    Redis学习笔记
    Python知识总结(二)
    Python知识总结
    最小联结词组
  • 原文地址:https://www.cnblogs.com/Onlyou/p/8780459.html
Copyright © 2011-2022 走看看