パッケージ library.ds

クラス SegmentTree<T>

java.lang.Object
library.ds.SegmentTree<T>
型パラメータ:
T -

public final class SegmentTree<T> extends Object
セグメント木
関連項目:
  • コンストラクタの概要

    コンストラクタ
    コンストラクタ
    説明
    SegmentTree(int fini, BinaryOperator<T> op, T e)
    コンストラクタ
    SegmentTree(T[] a, BinaryOperator<T> op, T e)
    コンストラクタ
  • メソッドの概要

    修飾子とタイプ
    メソッド
    説明
    final int
    findLeft(int r, Predicate<T> fn)
    特定の条件を満たす最も左の位置を探す
    final int
    findRight(int l, Predicate<T> fn)
    特定の条件を満たす最も右の位置を探す
    final T
    get(int i)
    SegmentTree[i]を返す
    final T
    query(int a, int b)
    半開区間[l, r)に対しての二項演算結果を返す
    final T[]
    SegmentTreeを配列に変換したものを返す
    final String
     
    final void
    update(int i, T x)
    i番目の要素をxにする

    クラスから継承されたメソッド java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • コンストラクタの詳細

    • SegmentTree

      public SegmentTree(int fini, BinaryOperator<T> op, T e)
      コンストラクタ
      パラメータ:
      fini - サイズ
      op - 二項演算
      e - 単位元
    • SegmentTree

      public SegmentTree(T[] a, BinaryOperator<T> op, T e)
      コンストラクタ
      パラメータ:
      a - ボクシングされた配列
      op -
      e -
  • メソッドの詳細

    • update

      public final void update(int i, T x)
      i番目の要素をxにする
      パラメータ:
      i -
      x -
    • get

      public final T get(int i)
      SegmentTree[i]を返す
      パラメータ:
      i -
      戻り値:
      i番目の要素
    • query

      public final T query(int a, int b)
      半開区間[l, r)に対しての二項演算結果を返す
      パラメータ:
      a -
      b -
      戻り値:
      半開区間[l, r)に対して二項演算した結果
    • findLeft

      public final int findLeft(int r, Predicate<T> fn)
      特定の条件を満たす最も左の位置を探す
      パラメータ:
      r -
      fn -
    • findRight

      public final int findRight(int l, Predicate<T> fn)
      特定の条件を満たす最も右の位置を探す
      パラメータ:
      l -
      fn -
    • toArray

      public final T[] toArray()
      SegmentTreeを配列に変換したものを返す
      戻り値:
      SegmentTreeの配列
    • toString

      public final String toString()
      オーバーライド:
      toString クラス内 Object