Beny's Study

14. TreeSet & 이진탐색트리 본문

[JAVA]/13. 제네릭과 컬렉션

14. TreeSet & 이진탐색트리

76beny 2022. 5. 1. 00:15

목차

- TreeSet

-메서드

-TreeSet의 add()

-TreeSet의 순회과정

-이진탐색트리

 


TreeSet

- TreeSet : 이진탐색트리 자료구조의 형태로 데이터 저장하는 컬렉션 클래스

- 내부적으로 TreeMap을 이용해서 만듬, 범위검색과 정렬에 유리함.

-이진트리는 모든 노트가 최대두개의 자식노드가짐

-각 노드가 트리의 형태로 연결되어있음

class TreeNode {
	TreeNode left; //왼쪽 자식노드
    Object element; //객체를 저장하기 위한 참조변수
    TreeNode right; //오른쪽 자식노드
}

 

TreeSet의 메서드

 

 

TreeSet의 add()

-compare() 호출로 비교해서 기존에 같은객체있는지 확인(중복X)

 

TreeSet의 순회과정

-순회 : 이진트리의 모든 요소(노드)를 한번씩 거쳐서 읽는것

-전위,중위,후위 ( 중위하면 오름차순정렬)

 

이진탐색트리 (binary search tree)

- 모든 노드는 최대 두개의 자식노드를 가질 수 있다.

- 왼쪽 : 부모노드보다 자식노드가 작음, 오른쪽 : 자식노드가 부모노드보다 큼

-노드의 추가삭제에 시간이 오래걸림(반복비교로 자리찾아 저장)

-검색(범위검색)과 정렬에 유리함

-중복된값을 저장하지 못함.

-링크드 리스르보다 데이터의 추가,삭제 시간이 더오래걸린다.

 

 

 

 


"본 인터넷 사이트 내의 모든 이미지, 문구, 콘텐츠, 내용 등에 대한 저작권은 76beny에게 있습니다.

이를 무단으로 도용, 복사, 전재, 재배포, 2차 변형 등을 할 경우

민, 형사상 법적 조치 등 저작권법에 의거하여 처벌 받을 수 있습니다."

 

'[JAVA] > 13. 제네릭과 컬렉션' 카테고리의 다른 글

15. TreeMap  (0) 2022.05.01
15. HashMap & TreeMap  (0) 2022.05.01
13. HashSet  (0) 2022.05.01
12. Comparator와 Comparable  (0) 2022.04.30
11. Arrays  (0) 2022.04.30