[JAVA] 해쉬 - 완주하지 못한 선수 찾기

2020. 8. 26. 11:19Algorithm/JAVA

반응형

  문제

  제한사항

  입출력

 입출력 설명


  해결 1) 정렬을 활용한 해결법

  풀이

1) 두 입력데이터 참가자 배열과, 완주자 배열을 정렬

2) 완주자 배열의 길이를 기준으로 반복문을 돌려서
참가자 배열과 완주자 배열의 원소들을 비교하여
다를경우 참가자 배열의 원소를 완주하지 못한 선수로 판단한다.

  해결 2) 해시맵을 활용한 해결 방법

  풀이

1) 참가자 선수(participant)의 이름이 Key가 되고, 해당 이름의 선수의 인원수가 Value가 되는 
HashMap 데이터 처리

2) 참가자 선수 기준으로 생성된 HashMap에 Value값을 변경한다.
완주자 선수(completion) 기준으로 해당 선수(Key)의 카운팅수(Value)를 -1 씩 처리

3) HashMap의 전체 Key를 반복문을 활용하여 해당 선수(Key)의 카운팅(Value)이
0이 아닐경우를 완주하지 못한 선수로 판단한다.
결국 Value가 1일 경우의 Key를 찾는 문제이다.

SOURCE CODE

 

hyunmin94/Algorithm

Contribute to hyunmin94/Algorithm development by creating an account on GitHub.

github.com

반응형

'Algorithm > JAVA' 카테고리의 다른 글

[JAVA] 해시 - 위장  (0) 2020.08.28
[JAVA] 해시 - 전화번호 목록 (접두사 찾기)  (0) 2020.08.27
[JAVA] 정렬 - 가장 큰 수 찾기  (0) 2020.08.26
[JAVA] 정렬 - H-index 찾기  (0) 2020.08.24
[JAVA] 정렬 - K번째수 찾기  (0) 2020.08.07