From 68e10cf3bc0b84d6e526cc5c50d2ba7b22a15a24 Mon Sep 17 00:00:00 2001 From: jeldo Date: Tue, 7 Jan 2025 19:45:01 +0900 Subject: [PATCH 1/2] 121 --- best-time-to-buy-and-sell-stock/jeldo.py | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 best-time-to-buy-and-sell-stock/jeldo.py diff --git a/best-time-to-buy-and-sell-stock/jeldo.py b/best-time-to-buy-and-sell-stock/jeldo.py new file mode 100644 index 000000000..46f8f1130 --- /dev/null +++ b/best-time-to-buy-and-sell-stock/jeldo.py @@ -0,0 +1,9 @@ +class Solution: + # O(n), n = len(prices) + def maxProfit(self, prices: List[int]) -> int: + min_price = float('inf') + profit = 0 + for price in prices: + min_price = min(min_price, price) + profit = max(profit, price - min_price) + return profit From 9baac3a5125bea2e61da3ad6509ff26985d6a532 Mon Sep 17 00:00:00 2001 From: jeldo Date: Tue, 7 Jan 2025 20:46:23 +0900 Subject: [PATCH 2/2] 49 --- group-anagrams/jeldo.py | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 group-anagrams/jeldo.py diff --git a/group-anagrams/jeldo.py b/group-anagrams/jeldo.py new file mode 100644 index 000000000..43954c4f9 --- /dev/null +++ b/group-anagrams/jeldo.py @@ -0,0 +1,10 @@ +from collections import defaultdict + + +class Solution: + # O(n*mlogm), n = len(str), m = the length of the longest string + def groupAnagrams(self, strs: list[str]) -> list[list[str]]: + group = defaultdict(list) + for s in strs: + group[''.join(sorted(s))].append(s) + return list(group.values())