Parallele Algorithmen - SS 2008 ¨Ubungsblatt 6 vom 19.06.2008

Werbung
Institut für Praktische Informatik
Fachgebiet Programmiersprachen und Übersetzer
Prof. Dr. Rainer Parchmann
Parallele Algorithmen - SS 2008
Übungsblatt 6 vom 19.06.2008
Abgabe der Lösungen am 03.07.2008 in der Vorlesung
Aufgabe 1
Gegeben sei ein geordneter Baum mit n Knoten in der Adjazenzlistendarstellung mit den zusätzlichen
Zeigern zur effizienten Erzeugung eines Eulerschen Weges von der Wurzel r zur Wurzel. Modifizieren Sie
den in der Vorlesung angegebenen Algorithmus zur Euler Tour“, so dass
”
a) die Stufenzahl eines jeden Knoten im Baum
b) die Anzahl der Knoten in jedem Teilbaum
c) eine Numerierung nach der Präordnung
mit O(log n) parallelen Schritten bestimmt wird.
Aufgabe 2
Ein geordneter Baum, in dem jeder Knoten maximal d direkte Nachfolger besitzt, werde durch ein Feld
von Knoten repräsentiert, wobei die direkten Nachfolger eines Knotens in aufeinander folgenden Einträgen
des Feldes gespeichert sind. Jeder Knoten besitzt zwei Zeiger auf den jeweils ersten und letzten direkten
Nachfolger dieses Knotens im Baum. Ist der Knoten ein Blatt, dann haben beide Zeiger den Wert NIL.
Wie kann man bei dieser Darstellung des Baumes eine Euler Tour effizient berechnen?
Aufgabe 3
Sei A = (a0 , a1 , . . . , an−1 ) ein Feld mit Elementen aus einer geordneten Menge, wobei n o.B.d.A eine Zweierpotenz ist. Das Suffix-Minima-Problem besteht darin, für jedes i, 0 ≤ i ≤ n − 1 , das minimale Element
aus {ai , ai+1 , . . . , an−1 } zu bestimmen. In analoger Weise kann man das Präfix-Minima-Problem definieren. Entwickeln Sie einen Algorithmus, der die Suffix- und Präfix-Minima von A in O(log n) Schritten
auf einer EREW-PRAM bestimmt.
Aufgabe 4
Sei A = (a0 , a1 , . . . , an−1 ) ein Feld, in dem Farben abgespeichert sind. Es gibt insgesamt k Farben
{c1 , . . . , ck }, wobei k eine Konstante ist. Für jeden Index i, 0 ≤ i < n, soll ein k-Tupel von Indizes
(i1 , . . . , ik ) bestimmt werden, so daß ij der Index des am nähesten links von ai stehenden Elementes mit
Farbe cj ist, d.h. ij = max {r | ar = cj , r ≤ i}.
Wie kann man dieses Problem auf einer EREW–PRAM in O(log n) Schritten lösen?.
Herunterladen