오늘 과제는 난이도가 많이 낮았다.
대부분 이미 풀어본 문제여서 어렵지 않게 풀어낼 수 있었다.
문제 모두 자료구조를 적절하게 사용해야 하는 문제였다.
그렇게 멘토링 시간에도 별다른 질의응답 없이 우리 조에서 선별한 최적의 코드에 대해 간단하게 설명하는 시간만 가졌다.
그러다 자료구조 얘기가 나와 멘토님께서 List
와 Map
의 차이점에 대해서 질문하셨다. 사용 빈도가 높은 자료구조임에도 불구하고 적당한 답변을 생각하기가 힘들었다.
면접 질문으로도 자주 출제되는 문제이니만큼 간단히 상기하고 가야겠다.
List
,Map
,Set
에 대해서 특징만 간단하게 정리해 보았다.
세 자료구조 모두 인터페이스로 각각의 구현체 클래스들이 존재한다.
오늘 문제를 풀면서 유용하게 사용했던 클래스는 Map
의 구현체인 TreeMap
클래스이다.
요소 삽입시에 정렬을 하므로 키를 기준으로 정렬이 필요할 때 유용하게 사용할 수 있다.