博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
两数和
阅读量:5305 次
发布时间:2019-06-14

本文共 617 字,大约阅读时间需要 2 分钟。

题目:

给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。

你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。

示例:

给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1] 实现一:遍历数组nums,找到nums[i]+nums[j]=target,返回{i,j};
class Solution {    public int[] twoSum(int[] nums, int target) {        for(int i=0;i

复杂度:时间复杂度O(n*n);  空间复杂度:O(1);

 

实现二:使用哈希表,先将数组nums和下标存储到哈希表,然后再进行查找

class Solution {    public int[] twoSum(int[] nums, int target) {                Map
map=new HashMap(); for(int i=0;i

复杂度:时间复杂度O(n),空间复杂度O(n)。

 

转载于:https://www.cnblogs.com/Optimism/p/10685913.html

你可能感兴趣的文章
图论——Dijkstra+prim算法涉及到的优先队列(二叉堆)
查看>>
网页下拉菜单被flash动画遮住
查看>>
echarts设置柱状图颜色渐变及柱状图粗细大小
查看>>
Windows内核编程之:分页内存与非分页内存 #define PAGEDCODE code_seg("PAGE") (转)
查看>>
iOS 使用 socket 即时通信(非第三方库)
查看>>
android UI进阶之实现listview中checkbox的多选与记录
查看>>
MAC Safari上网弹窗弹广告的最新有效解决方法
查看>>
ligerTab简单例子
查看>>
JMeter上传文件
查看>>
MVC+三层架构
查看>>
【06】GitHub WiKi
查看>>
【05】 定义类或对象
查看>>
package control(转载)
查看>>
POJ3281 Dining 最大流
查看>>
php 协程理解
查看>>
Linux ntpdate命令详解
查看>>
关于tuple的只读特性
查看>>
Unicode字符集和多字节字符集关系(转载)
查看>>
昨天晚上加班到9:15
查看>>
虚拟机linux联网
查看>>