two-sum.dart (696B)
1 2 3 4 //Two sum using dart. 5 //Runtime: 279ms Beats: 93.83% 6 //Memory: 144MB Beats: 26.24% 7 void main(){ 8 var sol = Solution(); 9 var nums = <int>[]; 10 nums.add(10); 11 nums.add(5); 12 nums.add(2); 13 nums.add(8); 14 print(sol.twoSum(nums, 18)); 15 16 17 } 18 19 class Solution { 20 List<int> twoSum(List<int> nums, int target) { 21 var vals = new Map(); 22 for(int i = 0 ; i < nums.length ; ++i){ 23 int diff = target - nums[i]; 24 if(vals.containsKey(diff)){ 25 List<int> output = [vals[diff], i]; 26 return output; 27 } 28 else{ 29 vals[nums[i]] = i; 30 } 31 } 32 List<int> output = [0 , 0]; 33 return output; 34 } 35 }