标签:color -- UNC dex com bsp func 数组下标 就是
1 var twoSum = function(nums, target) { 2 let a = nums.length; 3 while(a > 1) { 4 let last = nums.pop(); //pop出最后一个元素并将返回值赋值给last 5 if (nums.indexOf(target - last) > -1) { //indexOf方法的返回值不为-1的话就说明找到了该元素 6 return [nums.indexOf(target - last), nums.length] //返回一个数组[差值的下标,【数组长度】] 7 //ps:因为【数组长度】在循环前正好被-1,所以刚好就是当前减数的下标 8 } 9 a--; 10 } 11 }; 12 13 作者:recuerdos-de-la-alhambra 14 链接:https://leetcode-cn.com/problems/two-sum/solution/liang-shu-zhi-he-by-recuerdos-de-la-alhambra/ 15 来源:力扣(LeetCode)
这是别人的答案,我只加了注释以表示对它的理解,第一次接触LeetCode,实在太美妙了。这里面的大神的解题思路各种精巧,仰慕!
加油??
哦忘了发题目:
给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。
你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。
例如:
给定 nums = [2, 7, 11, 15], target = 9
因为 nums[0] + nums[1] = 2 + 7 = 9
所以返回 [0, 1]
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/two-sum
标签:color -- UNC dex com bsp func 数组下标 就是
原文地址:https://www.cnblogs.com/destiny-/p/13205676.html