de.bsvrz.pua.prot.processing.util
Class BinaryTree

java.lang.Object
  extended by de.bsvrz.pua.prot.processing.util.BinaryTree

public class BinaryTree
extends java.lang.Object

Balancierter binärer Suchbaums mit fester Knotenanzahl. Ermöglicht die effiziente Feststellung, ob ein Zeitstempel innerhalb der Zeitintervalle liegt, die in den Blättern des Knoten gespeichert sind.
Das Hinzufügen oder entfernen Knoten ist nicht möglich.

Version:
$Revision: 1.2 $ / $Date: 2008/01/22 16:55:49 $ / ($Author: yvonnes $)
Author:
beck et al. projects GmbH, Martin Hilgers

Constructor Summary
BinaryTree(java.util.List<Tuple<java.lang.Long,java.lang.Long>> periods)
          Erzeugt einen binären Suchbaum.
 
Method Summary
 boolean contains(long timeStamp)
          Prüft, ob ein Zeitstempel in den gespeicherten Intervallen liegt.
 long getEndOfAllIntervalls()
          Liefert das Ende aller Zeitintervalle zurück.
 long getEndOfInterval(int index)
          Liefert das Ende des Zeitintervalls index zurück.
 long getStartOfInterval(int index)
          Liefert das Anfang des Zeitintervalls index zurück.
 boolean isEmpty()
          Zeigt ob Zeitintervalle im Baum gespeichert sind.
 int size()
          Anzahl der verwalteten Zeitintervalle.
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

BinaryTree

public BinaryTree(java.util.List<Tuple<java.lang.Long,java.lang.Long>> periods)
Erzeugt einen binären Suchbaum.

Parameters:
periods - Zeitintervalle. Liste wird nicht verändert.
Method Detail

getStartOfInterval

public long getStartOfInterval(int index)
Liefert das Anfang des Zeitintervalls index zurück.

Parameters:
index - Index des Zeitintervalls
Returns:
Ende des Zeitintervalls oder -1, falls ein ungültiger Index verwendet wurde oder keine Zeitstempel verwaltet werden.

getEndOfInterval

public long getEndOfInterval(int index)
Liefert das Ende des Zeitintervalls index zurück.

Parameters:
index - Index des Zeitintervalls
Returns:
Ende des Zeitintervalls oder -1, falls ein ungültiger Index verwendet wurde oder keine Zeitstempel verwaltet werden.

getEndOfAllIntervalls

public long getEndOfAllIntervalls()
Liefert das Ende aller Zeitintervalle zurück. Es wird der größten Zeitstempel zurückgeliefert, der vom Baum verwaltet wird.

Returns:
Ende aller Zeitintervalls oder -1, falls ein ungültiger Index verwendet wurde oder keine Zeitstempel verwaltet werden.

size

public int size()
Anzahl der verwalteten Zeitintervalle.

Returns:
Anzahl der im Baum gespeicherten Zeitintervalle.

contains

public boolean contains(long timeStamp)
Prüft, ob ein Zeitstempel in den gespeicherten Intervallen liegt.

Parameters:
timeStamp - Zeitstempel.
Returns:
true, falls der Zeitstempel innerhalb der gespeicherten Zeitintervalle liegt. false sonst.

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object
See Also:
Object.toString()

isEmpty

public boolean isEmpty()
Zeigt ob Zeitintervalle im Baum gespeichert sind.

Returns:
true falls Zeitintevalle im Baum gespeichert sind.


Copyright © 2005-2008 beck et al. projects GmbH All Rights Reserved.