Geben Sie bei einem gegebenen Array von Ganzzahlen und einem ganzzahligen Ziel die Indizes der beiden Zahlen so zurück, dass sie sich zum Ziel addieren.
Sie können davon ausgehen, dass jede Eingabe genau eine Lösung hat, und Sie dürfen dasselbe Element nicht zweimal verwenden.
Sie können die Antwort in beliebiger Reihenfolge zurückgeben.
Example 1: Input: nums = [2,7,11,15], target = 9 Output: [0,1] Explanation: Because nums[0] + nums[1] == 9, we return [0, 1]. Example 2: Input: nums = [3,2,4], target = 6 Output: [1,2] Example 3: Input: nums = [3,3], target = 6 Output: [0,1]
Constraints: 2 <= nums.length <= 104 -109 <= nums[i] <= 109 -109 <= target <= 109 Only one valid answer exists.
var twoSum = function(nums, target) { for(let i=0;i<nums.length;i++){ for(let j=i+1;j<nums.length;j++){ if(nums[i]+nums[j]==target){ return [i,j] } } } };
Follow-up: Können Sie einen Algorithmus entwickeln, der eine geringere Zeitkomplexität als O(n2) aufweist?
var twoSum = function(nums, target) { let map=new Map(); for(let i=0;i<nums.length;i++){ let v1=nums[i]; let v2=target-v1; if(map.has(v2)){ return [i,map.get(v2)] } map.set(v1,i) } };
Das obige ist der detaillierte Inhalt vonZwei Summe || DSA || JavaScript || Von Munisekhar Udavalapati. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!