Two algorithms for maintaining order in a list
STOC '87 Proceedings of the nineteenth annual ACM symposium on Theory of computing
An Efficient Deadlock Avoidance Technique
IEEE Transactions on Computers
Maintaining a topological order under edge insertions
Information Processing Letters
Partial online cycle elimination in inclusion constraint graphs
PLDI '98 Proceedings of the ACM SIGPLAN 1998 conference on Programming language design and implementation
Incremental evaluation of computational circuits
SODA '90 Proceedings of the first annual ACM-SIAM symposium on Discrete algorithms
The boost graph library: user guide and reference manual
The boost graph library: user guide and reference manual
A constraint-based architecture for local search
OOPSLA '02 Proceedings of the 17th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
On-line Graph Algorithms for Incremental Compilation
WG '93 Proceedings of the 19th International Workshop on Graph-Theoretic Concepts in Computer Science
Two Simplified Algorithms for Maintaining Order in a List
ESA '02 Proceedings of the 10th Annual European Symposium on Algorithms
Depth-first discovery algorithm for incremental topological sorting of directed acyclic graphs
Information Processing Letters
Online Cycle Detection and Difference Propagation: Applications to Pointer Analysis
Software Quality Control
SODA '05 Proceedings of the sixteenth annual ACM-SIAM symposium on Discrete algorithms
A dynamic topological sort algorithm for directed acyclic graphs
Journal of Experimental Algorithmics (JEA)
Multiple alignment by sequence annealing
Bioinformatics
Efficient field-sensitive pointer analysis of C
ACM Transactions on Programming Languages and Systems (TOPLAS)
A tight analysis of the Katriel–Bodlaender algorithm for online topological ordering
Theoretical Computer Science
Posterior decoding methods for optimization and accuracy control of multiple alignments
Posterior decoding methods for optimization and accuracy control of multiple alignments
Faster Algorithms for Incremental Topological Ordering
ICALP '08 Proceedings of the 35th international colloquium on Automata, Languages and Programming, Part I
A new approach to incremental topological ordering
SODA '09 Proceedings of the twentieth Annual ACM-SIAM Symposium on Discrete Algorithms
Specific alignment of structured RNA
Bioinformatics
Wave Propagation and Deep Propagation for Pointer Analysis
Proceedings of the 7th annual IEEE/ACM International Symposium on Code Generation and Optimization
Markov blanket feature selection for support vector machines
AAAI'08 Proceedings of the 23rd national conference on Artificial intelligence - Volume 2
An O(n2.75) algorithm for online topological ordering
SWAT'06 Proceedings of the 10th Scandinavian conference on Algorithm Theory
Hi-index | 0.00 |
The dynamic topological order problem is that of efficiently updating a topological order after some edge(s) are inserted into a graph. Much prior work exists on the unit-change version of this problem, where the order is updated after every single insertion. No previous (non-trivial) algorithms are known for the batch version of the problem, where the order is updated after every batch of insertions. We present the first such algorithm. This requires O(min{k · (v + e), ve}) time to process any sequence of k insertion batches. This is achieved by only recomputing those region(s) of the order affected by the inserted edges. In many cases, our algorithm will only traverse small portions of the graph when processing a batch. We empirically evaluate our algorithm against previous algorithms for this problem, and find that it performs well when the batch size is sufficiently large.