문자열로 이루어진 배열을 뒤집는 문제
풀이
나의 풀이
class Soloution:
def reverseString(self, s: List[str]) -> None:
for i in range(len(s)//2):
k = len(s) - 1
s[i], s[k - i] = s[k - i], s[i]
맨 앞과 뒤의 값을 바꿔줘야 하기 때문에 range()의 범위를 배열 길이의 절반만큼 선언하였다.
(몫을 구하기 위해서 // 를 사용)
Java에서는 s[i], s[k - i] = s[k - i], s[i] 과 같은 방법을 쓸 수 없지만, Python은 가능하다.
(Java에서는 temp 변수를 이용하여 옮겨주고 옮겨주고 옮겨주고...의 방식을 사용해야 됨)
Python 함수 활용
class Soloution:
def reverseString(self, s: List[str]) -> None:
s.reverse()
생각을 못 했던 방법이었다.
기본적으로 내장되어 있는 함수를 잘 활용하는 것도 능력이라고 생각하기 때문에 다양한 함수를 공부해 보자
하지만 내가 풀었던 방법이 조금 더(아주아주 근소하게) 빨랐다.
'멋진 개발자 > 알고리즘' 카테고리의 다른 글
LeetCode 561. Array Partition (0) | 2024.05.27 |
---|---|
LeetCode 42. Trapping Rain Water (0) | 2024.05.24 |
LeetCode 1. Two Sum (0) | 2024.05.23 |
LeetCode 49. Group Anagrams (0) | 2024.05.20 |
LeetCode 125. Valid Palindrome (0) | 2024.05.16 |