프로그래밍나무

  • 홈
  • 태그

세그먼트 트리 1

세그먼트 트리(Segment Tree)

개념 세그먼트 트리는 간격에 대한 정보를 저장하는 자료구조입니다. 이를 이용하면 구간 합, 구간 최댓값/최솟값 들을 빠르게 구할 수 있습니다. 보통 구간 합을 구하는 방법은 해당 구간을 전부 탐색하면서 합을 구하는 방식입니다. 이 방법은 O(N)의 시간이 걸립니다. 하지만 세그먼트 트리의 경우 구간을 탐색하는데 O(lgN)의 시간밖에 걸리지 않습니다. 해당 글은 구간의 최솟값들을 구하는 방법으로 설명하겠습니다. https://www.acmicpc.net/problem/14438 14438번: 수열과 쿼리 17 길이가 N인 수열 A1, A2, ..., AN이 주어진다. 이때, 다음 쿼리를 수행하는 프로그램을 작성하시오. 1 i v : Ai를 v로 바꾼다. (1 ≤ i ≤ N, 1 ≤ v ≤ 109) 2 i..

CS/알고리즘 개념 2021.07.31
1
더보기
  • 분류 전체보기 (75)
    • Backend (15)
      • Spring (10)
      • JPA (2)
      • Oracle (2)
      • 기타 (1)
    • Frontend (5)
      • Vue (5)
    • Tools (1)
      • Jenkins (1)
    • 코딩테스트 (15)
      • 백준 (10)
      • SWEA (2)
    • CS (14)
      • CS 면접 준비 (2)
      • 알고리즘 개념 (10)
      • 자료구조 (2)
    • Cloud (1)
      • AWS (0)
    • 프로그래밍 언어 (5)
      • C++ (2)
      • JAVA (3)
    • Git (2)
    • Docker (3)
    • 책 (5)
      • 기술 관련 (5)
    • 프로젝트 (5)
      • SNS를 통한 운동팀 매칭 서비스 (4)
      • 설문조사 서비스 (1)
    • 기타 (1)

Copyright © Kakao Corp. All rights reserved.

티스토리툴바