Skip to content

Commit c8e3ac8

Browse files
committed
CHORE : changed file and added comment for group-anagrams
1 parent c4af0e7 commit c8e3ac8

File tree

1 file changed

+16
-15
lines changed

1 file changed

+16
-15
lines changed

group-anagrams/aa601.py

Lines changed: 16 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,19 @@
1-
# 시간복잡도 O(n)
2-
# 공간복잡도 O(1)
1+
#시간복잡도 O(n * klogk)
2+
#공간복잡도 O(n * k)
3+
# => n개의 단어 * 각 단어의 k만큼의 길이
34
class Solution:
4-
def maxProfit(self, prices: list[int]) -> int:
5-
min_p = prices[0] # 최소 가격 설정 : 배열의 첫 번째 가격
6-
cur = 0
7-
max_p = 0
8-
for n in prices:
9-
if n < min_p: # 현재 가격이 최소 가격보다 작다면 최소가격 갱신
10-
min_p = n
11-
cur = n - min_p # 현재 이익 계산
12-
if max_p < cur: # 현재 이익과 최대로 얻을 수 있는 이익 비교
13-
max_p = cur # 최대 이익 갱신신
14-
15-
return max_p
16-
5+
def groupAnagrams(self, strs: list[str]) -> list[list[str]]:
6+
ans = {}
177

8+
for word in strs:
9+
# 단어의 문자를 정렬 후 키로 사용
10+
sortedWord = ''.join(sorted(word)) # sorted()의 시간복잡도 : O(klogk)
11+
# 초기 리스트 생성
12+
if sortedWord not in ans:
13+
ans[sortedWord] = []
14+
ans[sortedWord].append(word)
1815

16+
# 딕셔너리의 value를 list로 변환
17+
ansLst = list(ans.values())
18+
return ansLst
19+

0 commit comments

Comments
 (0)