TreeSet
-
컬렉션 Map - TreeMap백엔드/자바 2020. 8. 17. 01:45
TreeMap이란? TreeMap은 Map 인터페이스를 구현한 클래스다. TreeMap은 키(key), 값(value)로 이뤄진 Entry객체를 이진탐색트리 형태로 저장한다. TreeSet과의 차이라면, TreeSet은 일반객체를 저장하고 TreeMap은 Entry객체를 저장한다. HashMap과의 차이라면, HashMap은 해싱을 통해 해시테이블(배열+연결리스트) 형태로 Entry객체를 저장한다. 반면, TreeSet은 이진 탐색 트리 형태로 Entry객체를 저장한다. 일반 탐색은 HashMap이 TreeMap에 비해 유리하고, TreeMap은 범위탐색, 정렬에 유리하다. TreeMap사용하기 TreeMap은 이전에 올린 HashMap과 큰 차이가 없다. 또한 이진 탐색 트리로 자료가 저장되므로, 범위..
-
컬렉션 Set - TreeSet백엔드/자바 2020. 8. 16. 06:08
TreeSet이란? Set의 인터페이스를 구현한 컬렉션 클래스다. 이진 탐색 트리(binary search tree)라는 자료구조 형태로 데이터를 저장한다. 그리고 당연히 Set 인터페이스를 구현했기에 중복을 허용하지 않는다. 또한 이진검색트리 구조에 맞게 정렬된 상태로 데이터가 저장되므로 저장 순서를 유지하지도 않는다. 즉 내부적으로 데이터 정렬은 가능하지만, 사용자의 데이터 입력 순으로 저장 순서가 유지되진 않는다. 이진 트리(binary tree)란? 이진 트리란 루트에서 시작하여 한 개 부모 노드에 최대 2개의 자식 노드를 붙일 수 있게 설계된 데이터를 저장할 수 있는 자료 구조를 말한다. 그림으로 보는게 더 이해하기 쉽다. 루트를 기준으로 여러 개의 요소(노드, node)가 서로 연결된 구조다...