A randomized maximum-flow algorithm
暂无分享,去创建一个
The authors present a randomized maximum-flow algorithm, called the PLED (prudent linking excess diminishing) algorithm, whose expected running time is O(nm+n/sup 2/(log n)/sup 3/); this is O(nm) for all except relatively sparse networks. The algorithm is always correct, and in the worst case, which occurs with negligible probability, it take O(nm log n) time. The approach taken is to maintain a parameter Delta , which is a measure of the maximum flow excess of a vertex and of the maximum amount of flow sent by a single operation. Initially, Delta is less than or equal to the maximum edge capacity, and Delta =0 at termination. The execution of the PLED algorithm is partitioned into phases so that Delta stays fixed during each phase and decreases between consecutive phases. In order to achieve a bound on the number of phases that is independent of the maximum edge capacity, the algorithm decreases Delta by as large a factor (>or=2) as possible, rather than by a constant factor. The algorithm uses the dynamic trees data structure.<<ETX>>
[1] Robert E. Tarjan,et al. Self-adjusting binary search trees , 1985, JACM.
[2] Robert E. Tarjan,et al. A data structure for dynamic trees , 1981, STOC '81.
[3] Robert E. Tarjan,et al. Fibonacci heaps and their uses in improved network optimization algorithms , 1987, JACM.