yesolje
프로그래머스_고득점kit_해시_완주하지 못한 선수 본문
풀이
import java.util.*;
class Solution {
public String solution(String[] participant, String[] completion) {
HashMap<String, Integer> hm = new HashMap<>();
for(String p : participant){
hm.put(p, hm.getOrDefault(p,0) + 1);
}
for(String c : completion){
hm.put(c, hm.get(c) -1);
}
for(String k : hm.keySet()){
if(hm.get(k) > 0){
return k;
}
}
return "";
}
}
개념정리
❓ HashMap
✔️ 데이터를 저장할 때 key 와 value 를 짝지어 저장하는 자료구조
✔️ 데이터를 저장할 때 key 값으로 해시 함수를 실행한 결과를 통해 저장 위치를 결정한다.
✔️ 데이터의 추가, 삭제, 검색이 빠르다.
✔️ key 값을 통해서만 검색이 가능하며, key 값은 중복될 수 없다.
HashMap 의 선언과 활용
import java.util.*;
class Solution {
HashMap<String,Integer> hm = new HashMap<>();
hm.put("홍길동", 1);
String p = "홍길동";
hm.put(p, hm.getOrDefault(p,0)); // 홍길동key 가 있으면 해당하는 value 값, 없으면 0을 리턴한다
hm.get("홍길동") // result 1
}'코딩테스트' 카테고리의 다른 글
| 프로그래머스_고득점kit_완전탐색_모의고사 (0) | 2025.03.07 |
|---|---|
| 프로그래머스_고득점kit_완전탐색_최소직사각형 (0) | 2025.03.07 |
| 프로그래머스_고득점kit_정렬_K번째 수 (0) | 2025.03.06 |
| 프로그래머스_고득점kit_스택큐_같은 숫자는 싫어 (0) | 2025.03.06 |
| 프로그래머스_고득점kit_해시_폰켓몬 (0) | 2025.02.24 |