
两数之和
发布日期:2021-05-07 23:08:24
浏览次数:28
分类:原创文章
本文共 985 字,大约阅读时间需要 3 分钟。
给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 的那 两个 整数,并返回它们的数组下标。
你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。
你可以按任意顺序返回答案。
示例 1:
输入:nums = [2,7,11,15], target = 9
输出:[0,1]
解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1] 。
示例 2:
输入:nums = [3,2,4], target = 6
输出:[1,2]
示例 3:
输入:nums = [3,3], target = 6
输出:[0,1]
提示:
2 <= nums.length <= 103
-109 <= nums[i] <= 109
-109 <= target <= 109
只会存在一个有效答案
方法一:暴力枚举 时间复杂度 O(n^2) 空间复杂度 1
//方法一:暴力枚举 时间复杂度 O(n^2) 空间复杂度 1var twoSum = function(nums, target) { // nums.sort(); var result=[]; for(var i=0;i<nums.length;i++){ for(var j=nums.length;j>i;j--){ if(nums[i]+nums[j]==target){ result.push(i); result.push(j); } } } return result;};
方法二:哈希表 时间复杂度 O(n) 空间复杂度 O(n)
function(nums, target){ var map = {}; for(var i = 0; i < nums.length; i++){ var a = nums[i]; var b = target - nums[i]; if(map[b] != undefined){ return [i,map[b]];} map[a] = i;}}
发表评论
最新留言
路过按个爪印,很不错,赞一个!
[***.219.124.196]2025年04月08日 00时17分32秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
Scala集合-数组、元组
2021-05-08
Flink Standalone集群安装和部署
2021-05-08
JAVA网络爬虫01-http client爬取网络内容
2021-05-08
04 程序流程控制
2021-05-08
java并发编程(1)
2021-05-08
C++&&STL
2021-05-08
双指针算法思想
2021-05-08
分组背包问题
2021-05-08
子集(LeetCode 78)
2021-05-08
旋转数组的最小值
2021-05-08
1004 Counting Leaves (30分)
2021-05-08
1093 Count PAT‘s (25分) 含DP做法
2021-05-08
一篇解决JMM与volatile详解(二)
2021-05-08
数据结构之数组与经典面试题(二)
2021-05-08
无锁并发框架-Disruptor的使用(二)
2021-05-08
Android wm命令
2021-05-08
boot.img 解包与打包
2021-05-08
Android4.4 平板背光设置
2021-05-08
递归复习--二叉搜索树
2021-05-08
jvm-02
2021-05-08