Issue No.03 - March (1986 vol.12)
Abha Moitra , Department of Computer Science, Cornell University, Ithaca, NY 14853
S. Sitharama Iyengar , Department of Computer Science, Louisiana State University, Baton Rouge, LA 70803
A recent trend in program methodologies is to derive efficient parallel programs from sequential programs. This paper explores the question of transforming a sequential algorithm into an efficient parallel algorithm by considering the problem of balancing binary search trees. The derivation of the parallel algorithm makes use of stepwise refinement. We first derive a new iterative balancing algorithm that exploits the similarity of point restructuring required at all the nodes at the same level. From this we derive a parallel algorithm that has time complexity O(1) on an N-processor configuration. This achieves the theoretical limit of speedup possible in a multiprocessor configuration.
Binary search trees, Parallel algorithms, Program processors, Arrays, Indexes, Vegetation, stepwise refinement, Balancing parallel algorithms, program transformation, search trees
Abha Moitra, S. Sitharama Iyengar, "Derivation of a parallel algorithm for balancing binary trees", IEEE Transactions on Software Engineering, vol.12, no. 3, pp. 442-449, March 1986, doi:10.1109/TSE.1986.6312885