728x90
반응형


반응형
해시를 사용하여 푸는 문제~~
문제에 대해서 구글링 하다가 getOrDefault을 쓴 코드를 찾아서 왜 쓰는지에 대한 추가적인 구글링을 통해 정리한 것은,
HashMap을 쓸 때 key값이 중복되면 value가 그냥 덮어쓰기 되어버리니, 중복될때마다 값을 추가하고 싶으면 쓰면 된다!
유용한 메소드 같으니 잘 외워되야 될 듯~~!
get 메소드는 key값이 매핑된 value 값을 리턴함(API 문서 참고하여 해석함).
그리고 keyset은, 말 그대로 이 map에 포함된 key들의 set를 리턴한다고 함(API 문서 참고해서 해석했음)
잘 외워두면 유용하게 쓸 수 있을 것 같다!
get.key가 해당 key의 value값을 가져오는 거라서 헷갈렸는데, 5번 넘게 똑같이 써보면서 외운듯ㅋㅋㅋㅋ
import java.util.HashMap;
class Solution {
public String solution(String[] participant, String[] completion) {
String answer = "";
HashMap<String, Integer> a = new HashMap<>();
for (String str1 : participant) {
a.put(str1, a.getOrDefault(str1, 0) + 1);
}
for (String str2 : completion) {
a.put(str2, a.get(str2) -1);
}
for (String str1 : a.keySet()) {
if(a.get(str1) != 0) {
answer = str1;
break;
}
}
return answer;
}
}
728x90
반응형
'JAVA 코딩 알고리즘 연습 > 프로그래머스' 카테고리의 다른 글
프로그래머스 - 크레인 인형뽑기 게임 (2019 카카오 개발자 겨울 인턴십 문제) / JAVA (자바) 코딩 알고리즘 연습 (0) | 2022.12.19 |
---|---|
프로그래머스 - 체육복 / JAVA (자바) 코딩 알고리즘 연습 (0) | 2022.12.15 |
프로그래머스 - 모의고사 / JAVA (자바) 코딩 알고리즘 연습 (0) | 2022.12.15 |
프로그래머스 - K번째수 / JAVA (자바) 코딩 알고리즘 연습 (0) | 2022.12.15 |
프로그래머스 - [1차] 다트 게임 (2018 KAKAO BLIND RECRUITMENT 문제) / JAVA (자바) 코딩 알고리즘 연습 (0) | 2022.12.15 |
프로그래머스 - [1차] 비밀지도 (2018 KAKAO BLIND RECRUITMENT 문제) / JAVA (자바) 코딩 알고리즘 연습 (0) | 2022.12.15 |
프로그래머스 - 예산 / JAVA (자바) 코딩 알고리즘 연습 (0) | 2022.12.15 |
프로그래머스 - 콜라츠 추측 / JAVA (자바) 코딩 알고리즘 연습 (0) | 2022.12.15 |
댓글