썬키의 개발노트

[JAVA-120849] 모음 제거 본문

알고리즘/프로그래머스

[JAVA-120849] 모음 제거

썬키 2023. 1. 17. 19:09
 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

링크를 클릭하면 해당 문제로 이동합니다.

 

 

출처 - 프로그래머스

 


 

1. 접근하기

우선, List를 생성한 다음 매개변수로 주어진 문자열을 Char 배열로 만들고 반복문을 이용, Char 배열 안에서 모음(a,e,i,o,u)이 있으면 List에 넣지 않고 반복문이 끝나면 List를 출력하면 되겠다. 라고 생각했다.

 

TO-DO
1) List 생성
2) 문자열을 Char 배열로 만들기
3) Char 배열에서 모음을 제외한 자음만 List에 넣고 출력하기

 

2. 코드

import java.util.ArrayList;
import java.util.List;

class Solution {
    public String solution(String my_string) {
        List<Character> list = new ArrayList<>();
        
        char[] chArr = my_string.toCharArray();
        String answer = "";
        
        for(char c : chArr) {
            if(!(c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u')) {
                list.add(c);
            }
        }
        
        for(int i = 0; i < list.size(); i++) {
            answer += list.get(i).toString();
        }
        
        return answer;
        
    }
}

 

3. 결과

4. 기타

풀고 나서 다른 사람들의 정답을 보면서 느낀건데 나는 참 간단한 문제도 어렵게 푸는 이상한 능력이 있다.

처음 문제를 접했을 때 왜 replaceAll를 생각하지 못했을까?

다음에 상동한 문제를 마주했을 땐 간단하게 풀기위해 다른 사람의 풀이를 남겨 놓는다.

class Solution {
    public String solution(String my_string) {
        return my_string.replaceAll("[aeiou]", "");
    }
}