tree 5

(데이터베이스) B-Tree와 데이터베이스 인덱스

B-Tree와 데이터베이스 인덱스1. B-Tree의 시간 복잡도B-Tree는 self-balancing 트리로, 다음과 같은 시간 복잡도를 가진다:탐색 (Search): O(logₙ N)삽입 (Insert): O(logₙ N)삭제 (Delete): O(logₙ N)여기서 N은 전체 키의 수, n은 자식 노드의 수(= branching factor)이다.즉, 자식 수가 많을수록 log의 밑이 커지므로 깊이가 얕아지고 탐색 횟수가 줄어든다.예시:자식 노드 수가 100일 경우, 1억 개의 키를 탐색할 때 최대 4단계만으로도 검색 가능.2. Secondary Storage의 특징하드디스크(HDD) 또는 SSD와 같은 보조 기억장치(Secondary Storage)는 다음과 같은 특징을 가진다:접근 속도는 RAM..

(자료구조) 트리(Tree) 구조별 용도와 업무 적용 정리 (B-Tree , AVL ,Red-Black Tree 등 )

트리(Tree) 구조별 용도와 업무 적용 정리📌 1. 용도에 따른 분류 요약 트리 종류사용 환경사용 이유 / 장점B-Tree / B+Tree데이터베이스(DB)디스크 I/O 최소화 → 빠른 조회 성능AVL Tree / Red-Black TreeWAS (Java 등 메모리 내)정렬 + 빠른 삽입/삭제/검색, 메모리 기반 컬렉션에 적합BST (일반 이진 탐색 트리)거의 실무에 사용되지 않음교육용 / 알고리즘 연습용 📌 2. B-Tree / B+Tree – 왜 DB에서 사용하는가?✅ 사용 환경데이터베이스 인덱스 구조 (Oracle, MySQL, PostgreSQL 등)✅ 핵심 이유: 디스크 I/O 비용 최소화DB는 데이터를 디스크에 저장함 → I/O는 매우 느림B-Tree는 자식 노드 수가 많아서 트리 깊..

카테고리 없음 2025.06.01

(자료구조) 레드-블랙 트리(Red-Black Tree) 개념과 속성 정리 part1 (예제 포함!!!!!)

레드-블랙 트리(Red-Black Tree) 개념과 속성 정리레드-블랙 트리는 자기 균형 이진 탐색 트리(Self-balancing BST) 의 일종이다. 일반 이진 탐색 트리(BST)는 삽입 순서에 따라 한쪽으로 편향될 수 있는데, 레드-블랙 트리는 특정 규칙을 통해 항상 트리의 높이를 O(log N) 수준으로 유지함으로써 검색, 삽입, 삭제 연산을 효율적으로 만든다.✅ 기본 개념이진 탐색 트리(BST)의 변형으로, 추가적인 색상 속성을 가지는 트리.모든 노드는 Red 또는 Black 색을 가짐.자체적으로 균형을 유지하여, 최악의 경우에도 탐색 시간이 O(log N)을 보장함.✅ 레드-블랙 트리의 5가지 주요 속성모든 노드는 Red 또는 Black이다.루트 노드는 항상 Black이다.모든 leaf 노드..

(자료구조) AVL 트리 개념과 특징

AVL 트리 개념과 특징1. AVL 트리란?AVL 트리는 **이진 탐색 트리(BST)**의 일종이다.스스로 균형을 잡는(self-balancing) 특성을 갖는다.1962년 Georgy Adelson-Velsky와 Evgenii Landis가 고안했다. (AVL 이름 유래)2. AVL 트리의 핵심: 밸런스 팩터 (Balance Factor)임의의 노드 X에 대해 밸런스 팩터(BF)는 다음과 같이 정의한다. BF(X) = 높이(왼쪽 서브트리) - 높이(오른쪽 서브트리) AVL 트리의 모든 노드는 반드시 다음 중 하나의 BF 값을 가진다. BF ∈ {-1, 0, 1}이 범위를 벗어나면 트리의 균형이 깨진 것으로 판단하여 **균형 조정 작업(회전)**을 수행한다. AVL 트리 균형 잡기 메커니즘AVL 트리는..

(cs)이진 탐색 트리 (Binary Search Tree, BST)

이진 탐색 트리 (Binary Search Tree, BST)1. 개념이진 탐색 트리(Binary Search Tree, BST)는이진 트리의 일종으로, 다음의 조건을 만족하는 트리 구조를 말한다.모든 노드의 왼쪽 서브트리: 현재 노드의 값보다 작은 값을 가진 노드들로 구성모든 노드의 오른쪽 서브트리: 현재 노드의 값보다 큰 값을 가진 노드들로 구성이러한 규칙 덕분에 탐색(search), 삽입(insert), **삭제(delete)**를 효율적으로 수행할 수 있다. 2. 이진 탐색 트리 순회 방법 (Traversal)트리의 모든 노드를 방문하는 방법을 **트리 순회(Tree Traversal)**라고 한다.이진 탐색 트리에서는 주로 다음 세 가지 순회 방법을 사용한다.(1) 중위 순회 (In-order..