코딩테스트 회고록/코테_Java

[JAVA] 프로그래머스 - 모음 제거

2023. 3. 25. 23:03
목차
  1. ❓ 문제 설명
  2. ⚠️ 제한사항 및 입출력 예시
  3. 🔍 알고리즘 구상
  4. ✏️ 직접 구현한 코드 &  코드 설명
  5. ⭐ 기억하고 넘어갈

프로그래머스 코딩테스트 연습 입문단계 '모음 제거' 문제입니다.

https://school.programmers.co.kr/learn/courses/30/lessons/120849

 

프로그래머스

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

programmers.co.kr


❓ 문제 설명

영어에선 a, e, i, o, u 다섯 가지 알파벳을 모음으로 분류합니다. 문자열 my_string이 매개변수로 주어질 때 모음을 제거한 문자열을 return하도록 solution 함수를 완성해주세요.

※ 아래 입출력 예시를 참고하세요!


⚠️ 제한사항 및 입출력 예시

  • my_string은 소문자와 공백으로 이루어져 있습니다.
  • 1 ≤ my_string의 길이 ≤ 1,000

입출력 예시 ▼

 

입력 (my_string)

"nice to meet you"

출력 (return 값)

"nc t mt y"
// "nice to meet you"에서 모음 i, o, e, u를 모두 제거한 "nc t mt y"를 return합니다.

🔍 알고리즘 구상

  • charAt() 메서드로 문자열을 하나씩 문자로 잘라서 비교한다
  • switch~case문을 이용해 자른 문자가 모음인지 판별한다
  • 모음이라면 문자열 변수에 더하기

✏️ 직접 구현한 코드 &  코드 설명

1) switch ~ case 문 사용

class Solution {
    public String solution(String my_string) {
        String answer = "";
        for(int i = 0; i < my_string.length(); i++) {
            switch(my_string.charAt(i)) {
            case 'a' : answer += ""; break;
            case 'e' : answer += ""; break;
            case 'i' : answer += ""; break;
            case 'o' : answer += ""; break;
            case 'u' : answer += ""; break;
            default : answer += my_string.charAt(i);
            }
        }
        return answer;
    }
}
  • 0부터 my_string - 1값까지 증가하는 i를 증가값으로 가지는 for문을 생성합니다.
  • 그 for문 안에는, my_string의 i 번째 문자가 모음이면, answer에 공백을 더하고 모음이 아니면, my_string의 i 번째 문자를 answer에 더하는 switch ~ case문을 넣었습니다.

 

2) replaceAll() 메서드 사용

class Solution {
    public String solution(String my_string) {
        String answer = "";
        answer = my_string.replaceAll("[aeiou]", "");
        return answer;
    }
}
  • replaceAll() 메서드를 이용해, my_string에 모음이 있는 자리에 공백을 넣어주었습니다.

⭐ 기억하고 넘어갈

  • replaceAll()  메서드

https://codingismylife.tistory.com/56

 

[JAVA] 메서드 - replace() & replaceAll()

🤔 replace() 와 replaceAll() 메서드는 무엇일까 replace() 와 replaceAll() 메서드는 문자열의 특정 문자를 원하는 문자로 변환하는 함수입니다. replace() replace(CharSequence target, CharSequence replacement) 첫 번째

codingismylife.tistory.com

'코딩테스트 회고록 > 코테_Java' 카테고리의 다른 글

[JAVA] 메서드 - toCharArray()  (0) 2023.03.28
[JAVA] 메서드 - toLowerCase(), toUpperCase()  (0) 2023.03.28
[JAVA] 메서드 - replace(), replaceAll()  (1) 2023.03.25
[JAVA] 프로그래머스 - 중복된 문자 제거  (0) 2023.03.23
[JAVA] 프로그래머스 - 7의 개수  (0) 2023.03.20
  1. ❓ 문제 설명
  2. ⚠️ 제한사항 및 입출력 예시
  3. 🔍 알고리즘 구상
  4. ✏️ 직접 구현한 코드 &  코드 설명
  5. ⭐ 기억하고 넘어갈
'코딩테스트 회고록/코테_Java' 카테고리의 다른 글
  • [JAVA] 메서드 - toCharArray()
  • [JAVA] 메서드 - toLowerCase(), toUpperCase()
  • [JAVA] 메서드 - replace(), replaceAll()
  • [JAVA] 프로그래머스 - 중복된 문자 제거
iamjisu
iamjisu
글 솜씨는 없지만 한 글자 한 글자 정성을 다해, 새롭게 배운 것을 정리하고 공부하는 코딩 성장 일기!!
iamjisu
지수의 코딩 발자국
iamjisu
전체
오늘
어제
github 링크
  • 카테고리
    • 개념정리
      • CS
      • MySQL
      • JavaScript
      • Kotlin
      • Java
      • NodeJS
      • Android
    • 코딩테스트 회고록
      • 코테_Java
      • 코테_C언어
    • 오류해결

최근 글

최근 댓글

hELLO · Designed By 정상우.
iamjisu
[JAVA] 프로그래머스 - 모음 제거
상단으로

티스토리툴바

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.