パッケージ library

クラス Tree.IndexedSegmentTree<T>

  • 型パラメータ:
    T -
    含まれているクラス:
    Tree

    private static class Tree.IndexedSegmentTree<T>
    extends java.lang.Object
    インデックス付きSegment Tree

    Segment Treeのクエリ結果に,その結果のインデックスを付与したデータ構造 クエリ結果の値を更新したい場合などに使える

    • コンストラクタの詳細

      • IndexedSegmentTree

        IndexedSegmentTree​(java.util.List<T> list,
                           T initialValue,
                           java.util.function.BinaryOperator<T> comparator)
      • IndexedSegmentTree

        IndexedSegmentTree​(int size,
                           T initialValue,
                           java.util.function.BinaryOperator<T> comparator)
    • メソッドの詳細

      • update

        void update​(int index,
                    T value)
        値の更新
        パラメータ:
        index - "0-indexed"のインデックス
        value - 更新後の値
      • update

        void update​(int index,
                    java.util.function.UnaryOperator<T> operator)
        値の更新
        パラメータ:
        index - "0-indexed"のインデックス
        operator - 更新式
      • query

        Tree.IndexedSegmentTree.IndexedValue<T> query​(int left,
                                                      int right)
        クエリ クエリの区間を [left, right) の半開区間で渡すことに注意
        パラメータ:
        left - "0-indexed"のクエリの左端
        right - "0-indexed"のクエリの右端 + 1 つまり"1-indexed"のクエリの右端
        戻り値:
        クエリ結果