0

以下のリンクで、範囲を0に設定する関数をレイジー伝播の実装に追加したいと思います。現在、範囲をインクリメントするupdate_tree関数がありますが、それを変更して変更する方法がわかりません。 O(log(N))時間で範囲を遅延ゼロに設定します。

http://se7so.blogspot.com.au/2012/12/segment-trees-and-lazy-propagation.html

各ノードで「レイジークリア」フラグを使用することを考えていますが、最初にクリアしてからレイジー追加またはレイジー追加してからクリアすることをどのように知ることができますか(これはちょうどクリアになります)?

4

1 に答える 1

1

処理する操作を含む各ノードのフラグの代わりにキューを使用します。FIFOデータ構造を使用している限り、それらが適切な順序で実行されていることを確認できます。私が質問の要点を見逃していない限り。

于 2013-02-16T22:45:57.820 に答える