Computing Prüfer codes efficiently in parallel

A Prüfer code of a labeled free tree with n nodes is a sequence of length n−2 constructed by the following sequential process: for i ranging from 1 to n−2 insert the label of the neighbor of the smallest remaining leaf into the ith position of the sequence, and then delete the leaf. Prüfer codes pro...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:Discrete Applied Mathematics Jg. 102; H. 3; S. 205 - 222
Hauptverfasser: Greenlaw, Raymond, Petreschi, Rossella
Format: Journal Article
Sprache:Englisch
Veröffentlicht: Lausanne Elsevier B.V 15.06.2000
Amsterdam Elsevier
New York, NY
Schlagworte:
ISSN:0166-218X, 1872-6771
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:A Prüfer code of a labeled free tree with n nodes is a sequence of length n−2 constructed by the following sequential process: for i ranging from 1 to n−2 insert the label of the neighbor of the smallest remaining leaf into the ith position of the sequence, and then delete the leaf. Prüfer codes provide an alternative to the usual representation of trees. We present an optimal O( log n) time, n/ log n processor EREW-PRAM algorithm for determining the Prüfer code of an n-node labeled chain and an O( log n) time, n processor EREW-PRAM algorithm for constructing the Prüfer code of an n-node labeled free tree. This resolves an open question posed by Wang et al. (IEEE Trans. Parallel Distributed Systems 8 (12) (1997) 1236–1240).
ISSN:0166-218X
1872-6771
DOI:10.1016/S0166-218X(99)00221-8