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);
}
};
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
Top comments (0)