[LeetCode] 345. Reverse Vowels of a String

Chobby·2025년 3월 24일
1

LeetCode

목록 보기
305/427

😎풀이

  1. 모음 여부를 반환하는 isVowel 선언
  2. 문자열의 처음과 마지막 부분에 포인터 위치
  3. 모음을 발견할 때까지 포인터 이동
  4. 두 포인터가 모두 모음을 가르킨다면 위치 교환
  5. 문자열 반환
function isVowel(s: string) {
    return "aAeEiIoOuU".includes(s.toLowerCase())
}

function reverseVowels(s: string): string {
    const result = [...s]
    let left = 0
    let right = s.length - 1
    while(left < right) {
        if(!isVowel(s[left])) {
            left++
            continue
        }
        if(!isVowel(s[right])) {
            right--
            continue
        }
        [result[left], result[right]] = [result[right], result[left]]
        left++
        right--
    }
    return result.join("")
};
profile
내 지식을 공유할 수 있는 대담함

0개의 댓글