差分
このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン前のリビジョン | 次のリビジョン両方とも次のリビジョン | ||
programming_algorithm:data_structure:sparse_table [2019/12/05] – ikatakos | programming_algorithm:data_structure:sparse_table [2019/12/05] – [±1-RmQ] ikatakos | ||
---|---|---|---|
行 94: | 行 94: | ||
A={A0,A1,...,AN−1} の要素が、必ず「左の値から1増えるか1減るかのどちらか」で変化していく配列の最小値/ | A={A0,A1,...,AN−1} の要素が、必ず「左の値から1増えるか1減るかのどちらか」で変化していく配列の最小値/ | ||
- | この場合、実装はちょっとややこしくなるが、事前計算量と空間を O(NlogN) から O(N) に落とすことができる。 | + | この場合、実装はちょっとややこしくなるが、クエリ応答は O(1) のまま、事前計算量と空間を O(NlogN) から O(N) に落とすことができる。 |
なかなか特殊な条件に見えるが、木の最小共通祖先だったり、たまに使える。 | なかなか特殊な条件に見えるが、木の最小共通祖先だったり、たまに使える。 |