zoukankan      html  css  js  c++  java
  • 1. Two Sum

    一、审题

      1、描述: 

      

      2、题意:

        求两数和为 target 的这两数下标

    二、解答

      若采用循环需要两层for,考虑用 Map 的 key 记录值,value 记录其所在下标,则时间复杂度为 n;

    class Solution {
        public int[] twoSum(int[] nums, int target) {
            int[] result;
            int index = 0;
            Map<Integer, Integer> map = new HashMap<Integer, Integer>();
            for (int i = 0; i < nums.length; i++) {
                if(map.containsKey(target - nums[i])) {  // 判断 map 中 是否包含了另一个值
                    result = new int[]{map.get(target - nums[i]), i};
                    return result;
                }
                map.put(nums[i], i);
            }
    
            return null;
        }
    }
  • 相关阅读:
    Daily Scrum NO.4
    Daily Scrum NO.3
    Daily Scrum NO.2
    Daily Scrum NO.1
    Beta任务项录入
    M1事后分析报告
    wenbao与概率
    wenbao与组合数
    wenbao与高斯消元
    wenbao与链表
  • 原文地址:https://www.cnblogs.com/skillking/p/9350652.html
Copyright © 2011-2022 走看看