Search

TreeMap

부모클래스
SortedMap
기능
다중 선택
Sort
선택
Key-Value
TreeMap은 레드-블랙 트리를 사용하여 구현된 Map입니다. 레드-블랙 트리는 균형 잡힌 이진 트리로서, 삽입, 삭제, 검색의 연산 시간이 O(log n)이 보장됩니다.
TreeMap은 키와 값을 자동으로 정렬합니다. 키의 정렬 기준은 Comparable 인터페이스를 구현한 객체의 compareTo() 메서드에 의해 결정됩니다. 키가 Comparable 인터페이스를 구현하지 않은 경우, Comparator 인터페이스를 구현한 객체를 사용하여 정렬 기준을 지정할 수 있습니다.
TreeMap의 주요 특징은 다음과 같습니다.
키와 값을 자동으로 정렬합니다.
삽입, 삭제, 검색의 연산 시간이 O(log n)입니다.
키가 Comparable 인터페이스를 구현하지 않은 경우, Comparator 인터페이스를 사용하여 정렬 기준을 지정할 수 있습니다.
TreeMap은 다음과 같은 경우에 사용하면 유용합니다.
키와 값을 정렬된 상태로 유지해야 하는 경우
키와 값을 빠르게 검색해야 하는 경우
키가 Comparable 인터페이스를 구현하지 않은 경우
TreeMap의 주요 메서드는 다음과 같습니다.
put(K key, V value): 키와 값을 Map에 추가합니다.
get(K key): 키가 지정된 값을 반환합니다.
remove(K key): 키가 지정된 값을 제거합니다.
containsKey(K key): 키가 Map에 포함되어 있는지 확인합니다.
containsValue(V value): 값이 Map에 포함되어 있는지 확인합니다.
keySet(): Map의 모든 키를 반환합니다.
values(): Map의 모든 값을 반환합니다.
entrySet(): Map의 모든 Entry를 반환합니다.
다음은 TreeMap을 사용하는 예입니다.
import java.util.TreeMap; public class TreeMapExample { public static void main(String[] args) { TreeMap<Integer, String> map = new TreeMap<>(); map.put(1, "A"); map.put(2, "B"); map.put(3, "C"); // 키와 값을 출력합니다. for (Integer key : map.keySet()) { System.out.println(key + ":" + map.get(key)); } } }
JavaScript
복사
이 코드를 실행하면 다음과 같은 결과가 출력됩니다.
1:A 2:B 3:C
JavaScript
복사
이 코드에서는 TreeMap() 생성자를 사용하여 TreeMap을 생성합니다. 그리고 put() 메서드를 사용하여 키와 값을 Map에 추가합니다. 마지막으로 keySet() 메서드를 사용하여 Map의 모든 키를 순회하면서 키와 값을 출력합니다.

메서드