본문 바로가기

프로그래머/Python

[Python] Leet Code 344 : Reverse String 풀이 및 분석

본 내용은 <파이썬 알고리즘 인터뷰>를 참고했습니다.

Leet Code 344 : Reverse String

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

포인트

  • 변환 값을 출력 또는 return하는 것이 아닌, 원본을 변환
def reverseString(self, s: List[str]) -> None:
    s.reverse()

포인트

  • .reverse() 기법 사용
def reverseString(self, s: List[str]) -> None:
    s[:] = s[::-1]

포인트

  • 본래 s = s[::-1]도 정상적으로 처리되어야 하나, 이 문제는 공간 복잡도를 O(1)로 제한하여 변수 할당을 처리하는데 제약이 있다고 한다.