Skip to content

Commit 7b5a99e

Browse files
authored
chore: merge pull request #1803 from hyogshin/main
[hyogshin] WEEK 03 solutions
2 parents 81cf5b5 + fbf5c6f commit 7b5a99e

File tree

2 files changed

+39
-0
lines changed

2 files changed

+39
-0
lines changed

number-of-1-bits/hyogshin.py

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
'''
2+
풀이
3+
- 파이썬3 내장 함수인 bit_count() 함수 이용
4+
5+
시간 복잡도: O(1)
6+
7+
공간 복잡도: O(1)
8+
'''
9+
10+
class Solution:
11+
def hammingWeight(self, n: int) -> int:
12+
return n.bit_count()
13+

valid-palindrome/hyogshin.py

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
'''
2+
풀이
3+
- alphanumeric만 저장하는 alnum 배열 생성
4+
- alnum 배열의 절반 (소수점 버림) 길이를 순회하며 Palindrome 인지 확인
5+
6+
시간 복잡도: O(n)
7+
- for loop * 2 -> O(2n) => O(n)
8+
9+
공간 복잡도: O(n)
10+
- alphanumeric만 저장하는 alnum 배열이 최악의 경우 O(n) 일 수 있음
11+
'''
12+
13+
class Solution:
14+
def isPalindrome(self, s: str) -> bool:
15+
alnum = []
16+
is_pal = True
17+
for c in s:
18+
if c.isalnum():
19+
alnum.append(c.lower())
20+
21+
for c in range(len(alnum) // 2):
22+
if alnum[c] != alnum[-1 - c]:
23+
is_pal = False
24+
break
25+
26+
return is_pal

0 commit comments

Comments
 (0)