INSTITUTFÜRINFORMATIK - Lehrstuhl für Effiziente Algorithmen ...
INSTITUTFÜRINFORMATIK - Lehrstuhl für Effiziente Algorithmen ...
INSTITUTFÜRINFORMATIK - Lehrstuhl für Effiziente Algorithmen ...
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
2.3. Monitore 47Algorithmus: WaveMonitorEingabe: Bitstream s ∈{0, 1} ∞Aufgabe: Gebe (1 ± ε)-Schätzung für |s i+1−N ...s i | 1 für alle i ≥ N ab1. WHILE Datenstromelement s i existiert2. P := (P + 1) /* Rechnungen modulo N ′ */3. Falls p ≤ P − N für erstes Element (p, r) derListeL, entferne(p, r) ausLund aus zugehöriger Queue und setze r 1 := r4. IF s i =15. R := (R +1)6. j := max{i | R ≢ 0mod2 i }7. IF Q j .size() = k +18. (p, r) :=Q j .deQueue()9. Entferne (p, r) ausListeL10. Q j .enQueue(P, r)11. Hänge (P, r) am Ende von L an12. Gebe Schätzung gemäß Schätzregel abAbbildung 2.14: Der Algorithmus WaveMonitor• Alle Positionen werden in einer Liste verwaltet mit Zeigern in Qeues.• Jedes Paar (p, r) wird nur in der Queue für das maximale Level verwaltet.Bild für Waveimplementierung zum BitstreambeispielKomplexität von WaveMonitor:• O(log εN) Queues mit jeweils höchstens k + 1 Elementen• eine Liste mit insgesamt O(k log εN) Elementen• jedes Element (p, r)benötigt log N +log log N Bits; Positionen können als Differenzengespeichert werden, dann O(log εN) Bits(daAbstandhöchsten bis O(εN) überprüftwerden muss)Version 0.6 Fassung vom 16. Februar 2007