| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 |
- spring
- 스프링부트
- 미니정리
- java
- 자바스크립트
- 스프링
- 백엔드
- node.js
- Next.js
- oracle
- 오라클
- 프론트엔드
- 자바
- 서버
- web
- JavaScript
- 프로그래머스
- 코드 테스트
- SQL
- jpa
- 정리
- 코드테스트
- 데이터베이스
- BACK-END
- 쿼리
- MySQL
- jsp
- 디자인 패턴
- 프런트엔드
- 알고리즘
- Today
- Total
참치코더의 꿈 메모장
알고리즘 69일차 - 프로그래머스 기출 문제(JAVA) / 숫자 문자열과 영단어 본문

- String s 매개변수로 들어온 문자열을 숫자는 숫자로 영어로 되어있는 숫자는 다시 숫자로 변환해서 반환하는 문제이다.
- (Map을 사용하는것 Stream을 사용하는 방법도 있는거 같은데, 이해가 빠른건 Map 컬렉션 쪽이었다.)
- map을 문자열로만 생성하고 해당 숫자에 해당하는 영어문자를 put해준다.
- 그 이후 StringBuilder메서드가 문자열 파악에 성능이 더 좋기 때문에 해당 StringBuilder 메서드를 선언 한 후
- for-each문을 사용해 해당 문자열을 (s.toCharArray) 1글자씩 배열 형식으로 만든 후에 해당 문자열을 대입시킨다.
- 만약 (Character.isDigit) ch 문자가 숫자라면 result 값에 바로 숫자로 추가가 되고
- 문자라면 임시 저장 문자열 temp에 ch가 추가가 되고 해당 문자열을 (map.containsKey)를 하여 해당 문자열을
가진 키가 존재하는지 확인을 한다. (해당 문자열이 존재한다면 result값에 map에 해당 하는 value을 찾아서 추가!)
- 마지막으로 해당값이 StringBuilder 값으로 이루어져 있으므로, .toString()을 통해서 문자열로 변환 후
문제에서 주어진 answer 반환이 Int 값으로 되어있으므로 Integer.parseInt()를 사용하면 정답을 얻을 수 있다. ^^
https://school.programmers.co.kr/questions/89320
프로그래머스
SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr

'잡다한 웹지식' 카테고리의 다른 글
| 알고리즘 71일차 - 프로그래머스 기출 문제(JAVA) / 두 개 뽑아서 더하기 (1) | 2025.07.13 |
|---|---|
| 알고리즘 70일차 - 프로그래머스 기출 문제(JAVA) / 크기가 작은 부분 문자열 (4) | 2025.07.12 |
| 알고리즘 68일차 - 프로그래머스 기출 문제(JAVA) / 3진법 뒤집기 (0) | 2025.07.08 |
| 알고리즘 67일차 - 프로그래머스 기출 문제(JAVA) / K번째수 (1) | 2025.07.06 |
| 알고리즘 66일차 - 프로그래머스 기출 문제(JAVA) / 이상한 문자 만들기 (1) | 2025.07.05 |