feat(work): add solutions for LeetCode problems 217, 242, 189, and 49

This commit is contained in:
Prad Nukala
2026-08-18 11:18:20 -04:00
parent e980dffd1e
commit ec7752f9f0
4 changed files with 243 additions and 0 deletions
+62
View File
@@ -0,0 +1,62 @@
/*
* 217. Contains Duplicate
* Difficulty: Easy
* https://leetcode.com/problems/contains-duplicate/
*
* ──────────────────────────────────────────────────
*
* Given an integer array nums, return true if any value appears at
* least twice in the array, and return false if every element is
* distinct.
*
*
*
* Example 1:
*
* Input: nums = [1,2,3,1]
*
* Output: true
*
* Explanation:
*
* The element 1 occurs at the indices 0 and 3.
*
* Example 2:
*
* Input: nums = [1,2,3,4]
*
* Output: false
*
* Explanation:
*
* All elements are distinct.
*
* Example 3:
*
* Input: nums = [1,1,1,3,3,4,3,2,4,2]
*
* Output: true
*
*
*
* Constraints:
*
* • 1 <= nums.length <= 10^5
*
* • -10^9 <= nums[i] <= 10^9
*/
/**
* @param {number[]} nums
* @return {boolean}
*/
var containsDuplicate = function(nums) {
const freq = {};
for (let n of nums) {
freq[n] = (freq[n] || 0) + 1;
if (freq[n] >= 2) {
return true;
}
}
return false;
};
+55
View File
@@ -0,0 +1,55 @@
/*
* 242. Valid Anagram
* Difficulty: Easy
* https://leetcode.com/problems/valid-anagram/
*
* ──────────────────────────────────────────────────
*
* Given two strings s and t, return true if t is an anagram of s, and
* false otherwise.
*
*
*
* Example 1:
*
* Input: s = "anagram", t = "nagaram"
*
* Output: true
*
* Example 2:
*
* Input: s = "rat", t = "car"
*
* Output: false
*
*
*
* Constraints:
*
* • 1 <= s.length, t.length <= 5 * 10^4
*
* • s and t consist of lowercase English letters.
*
*
*
* Follow up: What if the inputs contain Unicode characters? How would
* you adapt your solution to such a case?
*/
/**
* @param {string} s
* @param {string} t
* @return {boolean}
*/
var isAnagram = function(s, t) {
let freq = {};
for (let c of s) freq[c] = (freq[c] || 0) + 1;
for (let c of t) {
if(!freq[c] || freq[c] === 0){
return false;
}
freq[c] = freq[c] - 1;
}
return true;
};