diff --git a/challenge-1/index.js b/challenge-1/index.js new file mode 100644 index 0000000..066181f --- /dev/null +++ b/challenge-1/index.js @@ -0,0 +1,18 @@ +var twoSum = function (nums, target) { + if (!Array.isArray(nums) || typeof target !== 'number') { + return 0; + } + let result = []; + let element = new Map(); + for (let i = 0; i < nums.length; i++) { + let difference = target - nums[i]; + if (element.has(difference)) { + result.push(nums.indexOf(difference), i); + } + else { + element.set(nums[i], true); + } + }; + return result; +} +console.log(twoSum(nums,target)) \ No newline at end of file diff --git a/challenge-2/index.js b/challenge-2/index.js new file mode 100644 index 0000000..817e9bc --- /dev/null +++ b/challenge-2/index.js @@ -0,0 +1,33 @@ +var maxProfit = function(prices) { + if(!Array.isArray(prices)){ + return 0; + } + let left = 0; + let right = 1; + let difference = []; + findIndex(left,right,difference); + function findIndex(left,right,difference){ + if(right==prices.length){ + return; + } + else if(prices[left]0){ + return Math.max(...difference); + } + else{ + return 0; + } +}; +console.log(maxProfit(prices)); \ No newline at end of file diff --git a/challenge-3/index.js b/challenge-3/index.js new file mode 100644 index 0000000..203d3b1 --- /dev/null +++ b/challenge-3/index.js @@ -0,0 +1,16 @@ +var containsDuplicate = function(nums) { + if(!Array.isArray(nums)){ + return false; + } + let duplicate = new Map(); + for(let num of nums){ + duplicate.set(num,(duplicate.get(num)||0)+1); + } + for(let [key,value] of duplicate){ + if(value>1){ + return true; + } + } + return false; +}; +console.log(containsDuplicate(nums)); \ No newline at end of file diff --git a/challenge-4/index.js b/challenge-4/index.js new file mode 100644 index 0000000..f3fceab --- /dev/null +++ b/challenge-4/index.js @@ -0,0 +1,23 @@ +var productExceptSelf = function (nums) { + if (!Array.isArray(nums)) { + return 0; + } + let prefix = [1]; + let suffix = [1]; + let forward = 1; + let reverse = 1; + let value = 1; + let answer = []; + for(let i=1;i