Skip to content
Algorithm.js
📚 단일 패턴

345. Reverse Vowels of a String

문자열 양 끝에서 모음을 찾는 두 포인터로 교환하며 모음만 역순으로 만드는 풀이 정리

Oct 13, 2025 — two-pointers

문제 설명

풀이 아이디어

해결 전략

구현

/**
* @param {string} s
* @return {string}
*/
var reverseVowels = function(s) {
const array = s.split("");
const N = array.length;
const vowels = new Set(['a','e','i','o','u','A','E','I','O','U']);
let left = 0;
let right = N - 1;
while (left < right) {
while (left < right && !vowels.has(array[left])) left += 1;
while (left < right && !vowels.has(array[right])) right -= 1;
[ array[left], array[right] ] = [ array[right], array[left] ];
left += 1;
right -= 1;
}
return array.join("");
}