refactor(work): restructure solution directories with bucket level and add .gitkeep placeholders

This commit is contained in:
Prad Nukala
2026-08-31 10:41:40 -04:00
parent b21ab75e0e
commit 7e46fceb1c
41 changed files with 0 additions and 0 deletions
@@ -0,0 +1,64 @@
/*
* 125. Valid Palindrome
* Difficulty: Easy
* https://leetcode.com/problems/valid-palindrome/
*
* ──────────────────────────────────────────────────
*
* A phrase is a palindrome if, after converting all uppercase letters
* into lowercase letters and removing all non-alphanumeric characters,
* it reads the same forward and backward. Alphanumeric characters
* include letters and numbers.
*
* Given a string s, return true if it is a palindrome, or false
* otherwise.
*
*
*
* Example 1:
*
* Input: s = "A man, a plan, a canal: Panama"
* Output: true
* Explanation: "amanaplanacanalpanama" is a palindrome.
*
* Example 2:
*
* Input: s = "race a car"
* Output: false
* Explanation: "raceacar" is not a palindrome.
*
* Example 3:
*
* Input: s = " "
* Output: true
* Explanation: s is an empty string "" after removing non-alphanumeric
* characters.
* Since an empty string reads the same forward and backward, it is a
* palindrome.
*
*
*
* Constraints:
*
* • 1 <= s.length <= 2 * 10^5
*
* • s consists only of printable ASCII characters.
*/
/**
* @param {string} s
* @return {boolean}
*/
var isPalindrome = function(s) {
let normal = s.replace(/[^a-zA-Z0-9]/g, "").toLowerCase()
let i = 0, j = normal.length - 1;
while (i < j) {
if(normal[i] !== normal[j]) {
return false;
}
i++;
j--;
}
return true;
};
@@ -0,0 +1,48 @@
/*
* 344. Reverse String
* Difficulty: Easy
* https://leetcode.com/problems/reverse-string/
*
* ──────────────────────────────────────────────────
*
* Write a function that reverses a string. The input string is given as
* an array of characters s.
*
* You must do this by modifying the input array in-place with O(1)
* extra memory.
*
*
*
* Example 1:
*
* Input: s = ["h","e","l","l","o"]
* Output: ["o","l","l","e","h"]
*
* Example 2:
*
* Input: s = ["H","a","n","n","a","h"]
* Output: ["h","a","n","n","a","H"]
*
*
*
* Constraints:
*
* • 1 <= s.length <= 10^5
*
* • s[i] is a printable ascii character.
*/
/**
* @param {character[]} s
* @return {void} Do not return anything, modify s in-place instead.
*/
var reverseString = function(s) {
let i = 0;
let j = s.length - 1;
while (i < j) {
[s[i], s[j]] = [s[j], s[i]];
j--;
i++;
}
};
@@ -0,0 +1,57 @@
"""
392. Is Subsequence
Difficulty: Easy
https://leetcode.com/problems/is-subsequence/
──────────────────────────────────────────────────
Given two strings s and t, return true if s is a subsequence of t, or
false otherwise.
A subsequence of a string is a new string that is formed from the
original string by deleting some (can be none) of the characters
without disturbing the relative positions of the remaining characters.
(i.e., "ace" is a subsequence of "abcde" while "aec" is not).
Example 1:
Input: s = "abc", t = "ahbgdc"
Output: true
Example 2:
Input: s = "axc", t = "ahbgdc"
Output: false
Constraints:
• 0 <= s.length <= 100
• 0 <= t.length <= 10^4
• s and t consist only of lowercase English letters.
Follow up: Suppose there are lots of incoming s, say s1, s2, ..., sk
where k >= 10^9, and you want to check one by one to see if t has its
subsequence. In this scenario, how would you change your code?
"""
class Solution:
def isSubsequence(self, s: str, t: str) -> bool:
if len(s) > len(t):
return False
i, j = 0, 0
while i < len(s) and j < len(t):
if s[i] == t[j]:
i += 1
j += 1
return i == len(s)