문자열을 뒤집는 함수를 작성하라, 입력값은 문자 배열이며, 리턴 없이 리스트 내부를 직접 조작하라.

조건

투 포인터를 이용한 방식

논리적으로 생각한다면 반을 자른다음에 하나는 앞에서 부터 하나는 뒤에서 부터 돌아가면서 스왑하는 방식이다.

리턴 없이 리스트 내부를 조작해야하기 때문에 앞 뒤로 바꾸어야 한다.

def reverse_string(input: list[str]) -> list[str]:
    left, right = 0, len(input) - 1

    while left < right:
        input[left], input[right] = input[right], input[left]
        left += 1
        right -= 1

    return input

파이썬 리버스 메소드

리스트에는 뒤집을 수 있는 메소드가 탑재되어있다. (역시 객체.)

def reverse_string2(input: list[str]) -> list[str]:
    input.reverse()
    return input