• 两数之和


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

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

    示例:

    给定 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 }
    
    
    


  • 相关阅读:
    Go
    Go
    Go -11 Go 框架beego的简单 create run
    文本处理工具之:grep sed awk
    Linux系统布置java项目
    docker 启动mysql 本地连接
    time
    多行查询数据合并成一行进行展示
    settings的使用
    xlsxwriter
  • 原文地址:https://www.cnblogs.com/Onlyou/p/8780459.html
Copyright © 2020-2023  润新知