개념/Java 2

[Java] 우선순위 큐(Priority Queue) 정렬

우선순위 큐 (Priority Queue)기본적으로 큐는 FIFO(First In First Out) 의 구조를 가지지만우선순위 큐의 경우에는 순서가 아닌 순위가 높은 데이터가 먼저 나가는 자료구조를 말한다. 가장 작은 값이 먼저 나오는 MinHeap가장 큰 값이 먼저 나오는 MaxHeap정해진 기준에 따라서 결과가 출력 (Comparator/ Comparable 사용) 1. 오름차순 정렬 (MinHeap)우선순위 큐는 정수형에 대해서 기본적으로오름차순 정렬을 하기 때문에 별도의 설정이 필요없다. 2. 내림차순 정렬 (MaxHeap) 오름차순의 반대의 경우이므로 List를 내림차순으로 정렬할 때와 마찬가지로 `Collections.reverseOrder()`를 통해 정렬할 수 있다.선언할 때 기준을 설정..

개념/Java 2025.01.05

[Java] Comparable vs Comparator

💡 Comparable정렬 기준이 없는 객체의 클래스에서 구현하여 정렬 기준을 만들어주는 방식자기 자신과 매개변수 객체를 비교 → 자기 자신을 기준으로 대소 관계 파악기본형 (`Primitive Type`)을 정렬하기 위해서는 잘 사용하지 않음이미 오름차순으로 정렬 기준이 잡혀있음 → (-1)을 곱한다면 내림차순 정렬 가능`compareTo ( o)`@Overrideclass Student implements Comparable { String name; double height; Student(String name, double height) { this.name = name; this.height = height; } @Override public int compareTo(Student o) {..

개념/Java 2024.12.26