자료구조의 종류(List, Set, Map, HashMap)

0

TIL

목록 보기
78/126

List, Set, Map, HashMap는 공통적으로 컬렉션 프레임워크(Collection Framework)에서 제공하는 자료구조로, 데이터를 저장하고 관리하는 데 사용

List:
순서가 있고, 중복된 요소를 허용
인덱스(index)를 사용하여 요소에 접근 가능
요소의 추가, 삭제, 변경 등이 가능
예시: ArrayList, LinkedList

Set:
순서가 없고, 중복된 요소를 허용하지 않음
요소의 추가, 삭제, 변경 등이 가능
예시: HashSet, TreeSet

  • HashSet와 TreeSet은 모두 Set 인터페이스를 구현한 클래스이지만, HashSet는 해시 함수를 사용하여 데이터를 저장하고, TreeSet은 데이터를 정렬하여 저장한다. 따라서 HashSet의 데이터 검색 속도가 더 빠르지만, TreeSet은 데이터를 정렬하여 저장하기 때문에 범위 검색 등에서 용이하다.

Map:
key-value 쌍으로 데이터를 저장하며, key는 중복을 허용하지 않음
key를 사용하여 value에 접근 가능
key 또는 value의 추가, 삭제, 변경 등이 가능
예시: HashMap, TreeMap

  • TreeMap은 key를 기준으로 데이터를 정렬하여 저장하고, HashMap은 순서를 보장하지 않는다.
  • LinkedHashMap은 데이터를 추가한 순서를 유지한다.

HashMap:
Map 인터페이스를 구현한 구현체 중 하나
key-value 쌍으로 데이터를 저장하며, key는 중복을 허용하지 않음
중복된 key가 있다면, 데이터를 구분할 수 없게 되므로 오류가 발생
데이터 접근 속도가 빠르다.

  • 내부적으로 해시 함수(hash function)를 사용하여 데이터를 저장하기 때문에 순서가 보장되지 않는다.
  • null 값을 key나 value로 사용할 수 있다.

0개의 댓글