목록Java (181)
충분히 쌓여가는
TreeSet - 범위 탐색, 정렬 이진 탐색 트리(binary search tree)로 구현, 범위 탐색과 정렬에 유리 이진 트리는 모든 노드가 최대 2개의 하위 노드를 갖는다 각 요소(node)가 나무(tree)형태로 연결(LinkedList의 변형) class TreeNode { TreeNode left; // 왼쪽 자식노드 Object element; // 저장할 객체 TreeNode right; // 오른쪽 자식노드 } 이진 탐색 트리(binary search tree) 부모보다 작은 값은 왼쪽 큰 값은 오른쪽에 저장 단점: 데이터가 많아질 수록 추가, 삭제에 시간이 더 걸림(비교 횟수 증가) TreeSet - 데이터 저장과정 boolean add(Object o)
HashSet 객체를 저장하기 전에 기존에 같은 객체가 있는지 확인(순서를 유지하지 않고, 중복을 허용하지 않기 때문) boolean add(Object o)는 저장할 객체의 equals()와 hashCode()를 호출(equals()와 hashCode()가 오버라이딩 되어 있어야한다) class Person { String name; int age; Person(String name, int age) { this.name = name; this.age = age; } public String toString() { return name + ":" + age; } } public boolean equals(Object obj) { if(!(obj instanceof Person)) return false..
HashSet - 순서 X, 중복 X HashSet Set 인터페이스를 구현한 대표적인 컬렉션 클래스 순서를 유지하려면, LinkedHashSet 클래스를 사용하면 된다 TreeSet 범위 검색과 정렬에 유리한 컬렉션 클래스 HashSet보다 데이터 추가, 삭제에 시간이 더 걸림 HashSet 주요 메서드 HashSet() HashSet(Collection c) HashSet(int initialCapacity) HashSet(int initialCapacity, float liadFactor) boolean add(Object o) boolean addAll(Collection c) boolean remove(Object o) boolean removeAll(Collection c) boolean re..
Arrays 배열을 다루기 편리한 메서드(static) 제공 1. 배열의 출력 - toString() static String toString(boolean[] a) static String toString(byte[] a) static String toString(char[] a) static String toString(short[] a) static String toString(int[] a) static String toString(long[] a) static String toString(float[] a) static String toString(double[] a) static String toString(Object[] a) 2. 배열의 복사 - copyOf(), copyRange() in..