반응형 [코딩테스트] 7주차: 고급 자료구조 고급 자료구조학습 주제세그먼트 트리펜윅 트리 (Fenwick Tree)우선순위 큐와 힙학습 목표세그먼트 트리와 펜윅 트리의 개념을 이해하고, 다양한 쿼리 문제에 적용할 수 있다.우선순위 큐와 힙을 사용하여 효율적으로 데이터 구조를 관리하고, 관련 문제를 해결할 수 있다.학습 자료세그먼트 트리의 개념 및 구현 방법펜윅 트리의 개념 및 구현 방법우선순위 큐와 힙의 개념 및 활용실습 문제1. 세그먼트 트리를 사용한 범위 쿼리 문제주어진 배열에 대해 세그먼트 트리를 사용하여 범위 합 쿼리를 처리하는 함수를 작성하세요.class SegmentTree: def __init__(self, data): self.n = len(data) self.tree = [0] * (2 * self.n.. 2024. 6. 4. [자료구조] Week 4: 우선순위 큐와 힙 Day 1: 우선순위 큐의 기본 개념강의 내용:우선순위 큐의 정의와 특징우선순위 큐의 개념과 용도우선순위 큐와 일반 큐의 차이점우선순위 큐의 주요 연산insert, delete_min (또는 delete_max)실습:기본 우선순위 큐 구현 예제# 리스트를 사용한 간단한 우선순위 큐 구현class PriorityQueue: def __init__(self): self.queue = [] def insert(self, item): self.queue.append(item) self.queue.sort() # 오름차순 정렬 (최소 우선순위 큐) def delete_min(self): if not self.is_empty(): .. 2024. 6. 1. [코딩 테스트] 11. 심화 자료구조 Index 1. 우선순위 큐와 힙 2. 트리 3. 바이너리 인덱스 트리 4. 참고자료1. 우선 순위 큐와 힙우선순위 큐- 우선순위가 가장 높은 데이터를 가장 먼저 삭제하는 자료구조- 데이터를 우선 순위에 따라 처리하고 싶을 때 사용- 삽입/삭제시 O(logN)- heap 정렬은 O(NlogN) 구현 종류1) 리스트 이용해 구현2) heap을 이용해 구현 Heap- 완전 이진 트리 자료구조: root 노드부터 시작하여 왼쪽 자식 노드, 오른쪽 자식 노드 순서대로 데이터가 삽입되는 tree- Heap에서는 항상 root 노드를 제거- Min Heap / Max Heap 힙 정렬def heap_sort(iterable): h = [] result = [] for val in iterable: he.. 2023. 10. 17. 이전 1 다음 반응형