Skip to content

Commit 0b701a9

Browse files
authored
[njngwn] WEEK 02 solutions (#2676)
* solve valid anagram * solve climbing stairs
1 parent a9d860a commit 0b701a9

2 files changed

Lines changed: 19 additions & 0 deletions

File tree

climbing-stairs/njngwn.py

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
class Solution:
2+
# dynamic programming with bottom-up
3+
# Time Complexity: O(n)
4+
# Space Complexity: O(1)
5+
def climbStairs(self, n: int) -> int:
6+
if n <= 2: return n
7+
prev1, prev2 = 2, 1
8+
9+
for i in range(3, n+1):
10+
prev1, prev2 = prev2 + prev1, prev1
11+
12+
return prev1

valid-anagram/njngwn.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
from collections import Counter
2+
3+
class Solution:
4+
# Time Complexity: O(n), n: max(len(s), len(t))
5+
# Space Complexity: O(k), k: number of letters
6+
def isAnagram(self, s: str, t: str) -> bool:
7+
return Counter(s) == Counter(t)

0 commit comments

Comments
 (0)