💡TreeSet Class Tree 구조는 이진 트리 구조(이진 탐색 트리, BinarySearch Tree)를 의미하며, Set은 순서가 없고 중복값을 가지지 않음을 의미한다. 그런데 Tree 구조는 정렬이 되어 있다는 특징이 있다. TreeSet Class는 값을 비교해서 작으면 왼쪽에 방을 만들고, 크면 오른쪽에 방을 만든다. 그래서 들어가는 숫자의 순서에 따라 트리 구조가 이쁘게 만들어질 수도, 안 이쁘게 만들어질 수도 있다. Hash 알고리즘은 무언가를 찾을 때 굉장히 빠르다. 그래서 HahsSet이 보편적으로 사용하는 Set이지만, 순서가 정렬된 Set이 필요할 때 Tree 구조를 사용한다. TreeSet 클래스의 활용 TreeSet 배열 생성 HashSet set1 = new HashSet(..
📌리소스 📌Q114 Class import java.io.File; import java.util.Arrays; import java.util.HashMap; import java.util.Set; public class Q114 { public static void main(String[] args) { /* ● 요구사항 이미지 파일이 있다. 확장자별로 파일이 몇개 있는지 세시오. ● 조건 - 새로운 확장자 파일이 추가되도 동작이 가능하게 구현하시오. - 'mouse.bmp' 추가를 하면.. 소스 수정 없이도 *.bmp : 1개 출력이 되게 하시오. ● 리소스 - 폴더 > 확장자별 카운트 - 파일 다운로드 ● 출력 .gif: 10개 .jpg: 5개 .png: 3개 // HashMap를 이용한다. */ ..
💡HashSet Class Set 인터페이스는 순서가 없는 데이터 집합으로, 요소를 구분하는 식별자가 없다는 특징이 있다. 방을 식별하는 번호나 식별자가 없다는 말은 똑같은 데이터가 2개 들어 있으면 데이터를 구분할 수 있는 방법이 없다는 의미이다. 따라서 Set은 데이터 중복을 허용하지 않는다. ArrayList 클래스와 비교해보며 HashSet의 특징을 알아보도록 하자! HashSet 클래스의 활용 HashSet 선언하기 // ArrayList list = new ArrayList(); HashSet set = new HashSet(); 요소 추가하기 // list.add("강아지"); // list.add("고양이"); // list.add("거북이"); set.add("강아지"); set.add(..