📜

Reverse String

Reverse String - Explanation

쉬움 문자열 O(n) O(n)

Problem Summary

Write a function that reverses a string.

Go to Problem →

Detailed Explanation

이 문제는 **메서드 체이닝**을 통해 문자열을 뒤집는 방법을 학습합니다. 세 가지 배열/문자열 메서드를 연결하여 사용합니다. **split('') - 문자열을 배열로** 빈 문자열을 구분자로 사용하면 문자열의 각 문자가 배열의 요소가 됩니다: `"hello".split('')` → `['h', 'e', 'l', 'l', 'o']` **reverse() - 배열 뒤집기** 배열의 순서를 뒤집습니다 (원본 배열을 수정): `['h', 'e', 'l', 'l', 'o'].reverse()` → `['o', 'l', 'l', 'e', 'h']` **join('') - 배열을 문자열로** 배열 요소들을 연결하여 문자열로 만듭니다: `['o', 'l', 'l', 'e', 'h'].join('')` → `"olleh"` **메서드 체이닝의 장점** 각 메서드의 반환값에 바로 다음 메서드를 호출하여 코드를 간결하게 작성할 수 있습니다. **주의: 유니코드 이모지** 이 방법은 일반 문자에는 잘 동작하지만, 이모지나 복합 유니코드 문자에서는 문제가 생길 수 있습니다.

Solution Code

solution.js
function reverseString(str) {
  return str.split('').reverse().join('');
}

Key Concepts from This Problem

1. split 메서드
2. reverse 메서드
3. join 메서드
4. 메서드 체이닝

Common Mistakes

split()에 인자를 안 주면 배열에 문자열 전체가 하나의 요소로 들어갑니다
reverse()는 원본 배열을 수정하므로 주의가 필요합니다
join()에 인자를 안 주면 요소 사이에 쉼표가 들어갑니다

Hints

Hint 1: 문자열을 배열로 변환해보세요.
Hint 2: split, reverse, join 메서드를 활용하세요.

Complexity Analysis

Time Complexity

O(n)

Grows linearly with input size

Space Complexity

O(n)

Uses memory proportional to input size

Related Tags

#문자열 #split #reverse #join