DEV Community

Cover image for 1. Two Sum - Leetcode - JavaScript Solution using HashMap - by Abu Saleh Faysal
Abu Saleh Faysal
Abu Saleh Faysal

Posted on

 

1. Two Sum - Leetcode - JavaScript Solution using HashMap - by Abu Saleh Faysal

I previously solved this problem using two for loops. However, that was not a very efficient way to solve this problem. So, this time I solved this problem using HashMap.

Solution:

Step 01: Hashmap is a set of key, value pairs. I declared a variable which is an empty hashmap.

*Step 02: * Using a for loop, iterate the whole array and find out the needed number to meet the target (for each individual number) using this equation: needed number = target - individual number.

Step 03: Check if the hashmap contains the needed number or not, if it contains the needed number, then we simply return the needed number index and the index of that particular array element that gave us the needed number. If it does not meet the condition then, I simply store the number and the index in the hashmap.

Code:

/**
 * @param {number[]} nums
 * @param {number} target
 * @return {number[]}
 */
var twoSum = function(nums, target) {
    let hashMap = new Map();

    for(let i = 0; i < nums.length; i++) {
        let neededNumber = target - nums[i];

        if(hashMap.has(neededNumber)) {
            return [i, hashMap.get(neededNumber)];
        } 
        hashMap.set(nums[i], i);

    }
};
Enter fullscreen mode Exit fullscreen mode

If you want me to publish more posts like this, Buy me a coffee.

👉 YouTube Channel Link: https://www.youtube.com/channel/UCW_09Nbobf4URLkAlEo84sw
👉 PlayList Link: https://youtube.com/playlist?list=PLUnklBXn8NSefCpBaLe39mds6dQx-tDDD

👉 Connect with me (LinkedIn): https://www.linkedin.com/in/abusalehfaysal
👉 Follow our LinkedIn Page:
👉 Like our Facebook page: https://www.facebook.com/thebacklogprogrammer/
👉 Join our community (Facebook group): https://www.facebook.com/groups/5500588936676942/
👉 Follow me at: https://www.facebook.com/AbuSalehFaysal10
👉 Twitter: https://twitter.com/AbuSalehFaysal

👉 Abu Saleh Faysal’s Blog: https://abusalehfaysal.hashnode.dev/
👉 Hasnode: https://hashnode.com/@AbuSalehFaysal
👉 Dev Community: https://dev.to/abusalehfaysal
👉 freeCodeCamp: https://www.freecodecamp.org/abusalehfaysal
👉 Medium: https://abusalehfaysal.medium.com/

👉 GitHub: https://github.com/AbuSalehFaysal
👉 GitLab: https://gitlab.com/AbuSalehFaysal

Latest comments (0)