문자열을 뒤집는 함수를 작성하라, 입력값은 문자 배열이며, 리턴 없이 리스트 내부를 직접 조작하라.
논리적으로 생각한다면 반을 자른다음에 하나는 앞에서 부터 하나는 뒤에서 부터 돌아가면서 스왑하는 방식이다.
리턴 없이 리스트 내부를 조작해야하기 때문에 앞 뒤로 바꾸어야 한다.
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