728x90
[자료구조] 우선순위 큐
Algorithm2024. 7. 23. 22:20[자료구조] 우선순위 큐

우선순위 큐(Priority Queue)는 일반적인 큐와 달리 데이터가 들어온 순서가 아닌 우선순위에 따라 처리되는 자료구조이다. 이는 특정 작업의 중요도에 따라 먼저 처리해야 하는 상황에서 매우 유용하게 사용된다.우선순위 큐의 핵심은 우선순위를 기준으로 요소들을 정렬하여 관리하는 것이다. 예를 들어, 병원의 응급실에서는 환자가 도착한 순서대로 치료를 받는 것이 아니라, 상태가 위급한 환자가 먼저 치료를 받는다. 이러한 상황에서 우선순위 큐가 사용된다.우선순위 큐의 구조우선순위 큐는 일반적으로 힙(Heap) 자료구조를 사용하여 구현된다. 힙은 완전 이진 트리의 일종으로, 최대 힙(Max Heap)과 최소 힙(Min Heap)으로 나뉜다. 최대 힙에서는 부모 노드가 자식 노드보다 크거나 같고, 최소 힙에서..

기본 정렬 알고리즘(선택, 삽입, 버블, 합병, 퀵)
Algorithm2024. 5. 8. 00:53기본 정렬 알고리즘(선택, 삽입, 버블, 합병, 퀵)

선택정렬현재 위치에 들어갈 값을 찾아 정렬하는 방식현재 위치에 저장될 값의 크기가 작냐 크냐에 따라 최대 선택 정렬(Max Selection Sort)과 최소 선택 정렬(Min-Selection Sort)로 구분이 가능하다.최대 선택 정렬 → 내림 차순으로 정렬이 진행되는 방식최소 선택 정렬 → 오름 차순으로 정렬이 진행되는 방식동작 방식주어진 리스트중에 최소값을 찾는다그 값을 맨 앞에 위치한 값과 교체한다맨 처음 위치를 뺀 나머지 리스트를 같은 방법으로 교체한다 소스코드void selectionSort(int[] list) { int indexMin, temp; for (int i = 0; i 시간복잡도최선, 평균, 최악의 경우일 때 선택 정렬에 소요되는 비교 횟수를 C라고 할 때, 이를 수..

백준 10171 고양이
Algorithm/baekjoon2022. 1. 2. 16:51백준 10171 고양이

분명 간단한 문제인것 같은데 의외로 한번에 통과가 안된다.. 무엇이 문제인지 메모를 해두고자 한다 \ /\ ) ( ') ( / ) \(__)| 이런 모양의 고양이를 출력하게 해야한다 #include int main(void) { printf("\\ /\\ "); printf("\n"); printf(" ) ( ')"); printf("\n"); printf("( / )"); printf("\n"); printf(" \\(__)|"); return 0; } 역슬래시를 출력하기 위해 두번 넣어주는 방식으로 코드를 변형하는 것이 핵심인 듯 하다. #include int main(void) { printf("\\");//역슬래시 출력 printf("\"");//쌍따옴표 출력 printf("\'");//따옴표 출..

728x90
image