1.Two Sum
来源:互联网 发布:java 登录密码md5加密 编辑:程序博客网 时间:2024/05/22 05:08
Given an array of integers, return indices of the two numbers such that they add up to a specific target.
You may assume that each input would have exactly one solution, and you may not use the same element twice.
Example:
Given nums = [2, 7, 11, 15], target = 9,Because nums[0] + nums[1] = 2 + 7 = 9,return [0, 1].
public class Solution { public int[] twoSum(int[] nums, int target) { int[] solution=new int[2]; for(int i=0;i<nums.length-1;i++){ for(int j=i+1;j<nums.length;j++){ if(nums[i]+nums[j]==target){ solution[0]=i; solution[1]=j; return solution; } } } return solution; } }上面这种方法是遍历,复杂度比较高,嗯,编程能力比较小白
其他方法我看到有一种复杂度为O(n)的,采用了HashMap;containsKey(value)表示查找map中含有括号中的value;get(value)表示获得map中相应value的key值;put(value,key)把值放入map中
public class Solution{ public int[] twoSum(int[] numbers, int target) { int[] result = new int[2]; Map<Integer, Integer> map = new HashMap<Integer, Integer>(); for (int i = 0; i < numbers.length; i++) { if (map.containsKey(target - numbers[i])) { result[1] = i; result[0] = map.get(target - numbers[i]); return result; } map.put(numbers[i], i); } return result; }}相关链接:https://discuss.leetcode.com/topic/2447/accepted-java-o-n-solution
阅读全文
0 0
- 1. Two Sum && 167. Two Sum II
- LeetCode 1. Two Sum
- [LeetCode]1.Two Sum
- LeetCode 1.Two Sum
- LeetCode --- 1. Two Sum
- 1.Two Sum
- [Leetcode] 1. Two Sum
- leetcode---1.Two sum
- 1.Two Sum
- [Leetcode] 1. Two Sum
- LeetCode 1.Two Sum
- 1. Two Sum
- 1. Two Sum
- 1. Two Sum Ruby
- LeetCode 1.Two Sum
- LeetCode 1.Two Sum
- 1. Two Sum
- 1.Two Sum
- thinkPHP增删改查
- 设计模式-Java实现单例模式
- 用户、权力下放、非登录状态root用户密码修改
- 【安全牛学习笔记】SSL、TLS拒绝服务攻击和补充概念
- 父母们的做法有没有耽误孩子们的健康
- 1.Two Sum
- Python Image模块API
- Xcode_自定义代码块
- starring V6平台开发接出点流程
- QT5串口编写
- leetccode 53. Maximum Subarray
- java设计模式(十六)——责任链模式(Chain of Responsibility)
- winsock 常用数据结构
- Django--4--views.py详解