힙 정렬

    [프로그래머스] 힙(Heap) - 더 맵게 (Java)

    프로그래머스 Level 2 힙(Heap) - 더 맵게 (자바) 출처 https://programmers.co.kr/learn/courses/30/lessons/42626 코딩테스트 연습 - 더 맵게 매운 것을 좋아하는 Leo는 모든 음식의 스코빌 지수를 K 이상으로 만들고 싶습니다. 모든 음식의 스코빌 지수를 K 이상으로 만들기 위해 Leo는 스코빌 지수가 가장 낮은 두 개의 음식을 아래와 같�� programmers.co.kr 문제 매운 것을 좋아하는 Leo는 모든 음식의 스코빌 지수를 K 이상으로 만들고 싶습니다. 모든 음식의 스코빌 지수를 K 이상으로 만들기 위해 Leo는 스코빌 지수가 가장 낮은 두 개의 음식을 아래와 같이 특별한 방법으로 섞어 새로운 음식을 만듭니다. 섞은 음식의 스코빌 지수 =..

    [백준 2220] 힙 정렬 (자바)

    백준 2220번 힙 정렬 (자바) 출처 https://www.acmicpc.net/problem/2220 2220번: 힙 정렬 힙은 자료의 추가, 우선순위가 제일 높은 자료의 삭제가 가능한 자료구조이다. 이와 같은 힙에는 두 종류가 있는데, 각각 최소-힙, 최대-힙이다. 이 문제에서는 최대-힙을 다루기로 하자. 이와 같 www.acmicpc.net https://baelanche.tistory.com/132 [백준 2220] 힙 정렬 1부터 n-1 까지 최대힙으로 넣어준다. 마지막으로 배열의 n 자리에 1을 넣어주면 스왑이 가장 많은 힙 구조가 완성된다. public class Main { public static void main(String[] args) { Scanner sc = new Scanne..

    [Heap Sort] 힙 정렬

    ※ 참고자료 - 유튜브(동빈나) https://www.youtube.com/watch?v=iyl9bfp_8ag&t=331s 힙 정렬이란? 완전 이진트리의 일종이다. 현재 완전히 정렬된 상태가 아니며, 중복 값을 허용한다. 병합 정렬과 퀵 정렬만큼 빠른 속도를 가지고 있다. 힙의 정의를 알아야 한다. 힙이란? 힙을 알기 위해선 이진트리를 먼저 알아야 한다. 이진트리 : 모든 노드의 자식 노드가 2개 이하인 트리 완전 이진트리 : 노드를 삽입할 때 왼쪽부터 차례대로 삽입하는 트리. 즉, 이진트리의 노드가 중간이 비지 않고 빽빽이 가득 찬 구조 힙 : 최솟값이나 최댓값을 빠르게 찾아내는 이진트리를 기반한 트리 최대 힙 : 부모 노드가 자식 노드보다 큰 힙 최소 힙 : 부모 노드가 자식 노드보다 작은 힙 문제에..