[java] 자바 힙에서 중복된 값 처리 예시
자바 프로그램에서 힙(heap)은 동적으로 할당된 메모리의 영역으로서, 객체와 배열이 저장되는 곳입니다. 때때로 중복된 값의 처리가 필요한 상황이 발생할 수 있는데, 이를 위해 자바에서는 다양한 방법을 제공합니다.
HashSet을 활용한 중복 제거
HashSet
은 중복을 허용하지 않고 유일한 값을 저장하는 자료구조입니다. 아래는 HashSet
을 사용하여 중복된 값을 제거하는 예시 코드입니다.
import java.util.HashSet;
public class RemoveDuplicates {
public static void main(String[] args) {
String[] names = { "John", "Jane", "John", "Doe", "Jane" };
HashSet<String> uniqueNames = new HashSet<>();
for (String name : names) {
uniqueNames.add(name);
}
for (String uniqueName : uniqueNames) {
System.out.println(uniqueName);
}
}
}
위의 코드는 names
배열에서 중복된 값을 제거한 후, 유일한 값만을 출력합니다.
TreeSet을 활용한 정렬과 중복 제거
TreeSet
은 중복을 허용하지 않고 값들을 정렬하여 저장하는 자료구조입니다. 아래는 TreeSet
을 사용하여 중복된 값을 제거하고 정렬하는 예시 코드입니다.
import java.util.TreeSet;
public class RemoveDuplicatesAndSort {
public static void main(String[] args) {
String[] names = { "John", "Jane", "John", "Doe", "Jane" };
TreeSet<String> uniqueSortedNames = new TreeSet<>();
for (String name : names) {
uniqueSortedNames.add(name);
}
for (String uniqueSortedName : uniqueSortedNames) {
System.out.println(uniqueSortedName);
}
}
}
위의 코드는 names
배열에서 중복된 값을 제거하고 정렬한 후, 결과를 출력합니다.
중복된 값의 처리는 프로그램에서 자주 발생하는 문제이며, HashSet
과 TreeSet
을 활용하여 효과적으로 처리할 수 있습니다.
참고 문헌: