Java 练习1--数组
来源:互联网 发布:数据的分散程度怎么算 编辑:程序博客网 时间:2024/04/28 05:04
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 thesame element twice.
Example:
Given nums = [2, 7, 11, 15], target = 9,Because nums[0] + nums[1] = 2 + 7 = 9,return [0, 1].
解决代码:
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 + 1; result[0] = map.get(target - numbers[i]); return result; } map.put(numbers[i], i + 1); } return result; }解释:将数组值逐一放入map中,然后用后面的数据进行比较,是否存在之和为给定值,若存在则返回。
复杂度o(n)。
阅读全文
0 0
- Java 练习1--数组
- Java数组练习
- JAVA数组练习
- Java数组练习
- Java数组练习
- Java数组练习
- Java练习:数组
- Java数组练习
- java数组专项练习
- Java对象数组练习
- 练习--java数组
- java数组练习
- java【源码】二维数组练习
- Java数组练习冒泡排序
- Java数组的相关练习
- Java练习--数组最大距离
- 编程练习二维数组 java
- Java 基础练习之数组
- 测试实习生面试
- 70-persistent-net.rules以及网卡配置详解
- c++队列 优先队列的使用方法
- 白盒测试和黑盒测试
- PAT练习-A除以B
- Java 练习1--数组
- inline用法详解
- 爬虫技术是什么?
- Git命令详解
- 各种作业的整理目录
- Python的机器学习库Sklearn中重要模块及其常用函数整理
- Linq学习
- 修改Linux的IP,Gateway和DNS
- Android 中的 ManagedQuery()