자료구조 - R트리(R-Tree)

2024. 11. 16. 15:00·이론공부/개념

□ R-Tree 개념

R-Tree는 점, 선, 면과 같은 2차원 이상의 공간 정보를 효율적으로 저장하기위한 자료구조로 위치기반 데이터에서 자주 사용된다.

 

□ R-Tree 구조

R-Tree는 여러개의 노드에 MBR(최소 경계 사각형)을 저장하여 그안에 포함되는 객체들의 공간을 나타낸다.

□ MBR(최소 경계 사각형)

각 객체에 사각형으로 경계를 만들고 묶어서 표현하면 아래와 같다.

MBR(최소 경계 사각형)

 

 

위 MBR을 트리로 나타내면 아래와 같다.

 

  • 부모 노드(Parent Node): 한 노드에 대해 바로 위에 연결된 노드.
  • 자식 노드(Child Node): 한 노드에 대해 바로 아래에 연결된 노드.
  • 리프 노드(Leaf Node): 자식이 없는 노드. 트리의 끝을 나타냄.
  • 형제 노드(Sibling Node): 같은 부모 노드를 공유하는 노드들.

□ R-Tree와 B-Tree의 차이점

구분 R-Tree B-Tree
데이터 타입 2차원 이상의 공간 데이터 정렬된 일반 데이터(숫자 ,문자열 등)
노드 구성 방식 MBR(최소 경계 사각형) 키-값 쌍으로 저장
검색 방식 범위와 영역 단일 값
노드 분할 방식 겹침을 최소화하는 알고리즘으로 분할 중간값 기준으로 분할
사용처 위치기반, 공간데이터 검색에 사용  정렬된 데이터 검색 시 사용

 

'이론공부 > 개념' 카테고리의 다른 글

CORS(Cross-Origin Resource Sharing)  (0) 2025.02.13
객체지향과 SOLID원칙  (0) 2025.02.06
DB 인덱싱(Database Indexing)  (0) 2024.11.10
기술면접 준비(2)  (1) 2024.09.30
프록시(Proxy)란?  (0) 2024.09.05
'이론공부/개념' 카테고리의 다른 글
  • CORS(Cross-Origin Resource Sharing)
  • 객체지향과 SOLID원칙
  • DB 인덱싱(Database Indexing)
  • 기술면접 준비(2)
DJ.Kang
DJ.Kang
백엔드 개발 기록 블로그
  • DJ.Kang
    DJ Hello World
    DJ.Kang
  • 전체
    오늘
    어제
    • 분류 전체보기
      • 이론공부
        • 개념
        • 정보처리기사 필기
        • 정보처리기사 실기 기출
        • 네트워크관리사 2급
        • SQLD
      • 시스템설계
      • Java & Spring
        • TIL
        • 트러블슈팅
        • 고도화
        • 알고리즘
        • 코딩테스트
        • Java
        • Spring
        • Thymeleaf
      • 프로젝트
        • coin-trading
        • 트러블슈팅
      • Docker
      • 웹
      • git & github
  • 블로그 메뉴

    • 홈
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    개발로드맵
    java super
    java 에라토스테네스의 체
    Java this
    java two-pointer
    java 멤버
    java 세수의합
    java enhance switch
    java
    java arrays.copyofrnage()
    java기초
    Java 생성자
    데이터 크기
    자료구조
    프로그래머스 java 기초 트레이닝
    java 제어자
    데이터 타입
    java 메서드
    프로그래머스 java 기초트레이닝
    java 유클리드 호제법
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.1
DJ.Kang
자료구조 - R트리(R-Tree)
상단으로

티스토리툴바