알고리즘
[파이썬 알고리즘 인터뷰] 문자열 뒤집기
고구마뿌리
2022. 2. 14. 21:01
728x90
Reverse String - LeetCode
Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview.
leetcode.com
나의 풀이
def reverseString(self, s : List[str]) -> None:
s = s[::-1]
원래는 정상적으로 작동해야 하는 코드이지만 리트코드의 특성 상 작동하지 않는다. s[:]=s[::-1]로 트릭을 사용할 수 있지만... 이를 생각한다는게 흠....
풀이 # 1
def reverseString(self, s : List[str]) -> None:
left, right = 0, len(s)-1
while left < right:
s[left],s[right] = s[right],s[left]
left+=1
right-=1
투포인터를 사용하여 좌우를 서로 번갈아가면 교환하여 해결하는 방법이다. 가장 고전적인 방법이라 할 수 있다.
풀이 # 2
def reverseString(self, s : List[str]) -> None:
s.reverse()
- str.reverse() : 리스트에서만 사용가능
파이썬의 특징을 잘 살린 코드라 할 수 있다. reverse()를 통해 간단하게 해결하였다.
반응형