|
SSJ V. 2.6. |
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object umontreal.iro.lecuyer.simevents.eventlist.SplayTree
public class SplayTree
An implementation of EventList
using a splay tree.
This tree is like a binary search tree except that when it
is modified, the affected node is moved to the top.
The rebalancing scheme is simpler than for a red black
tree and can avoid the worst case of the linked list.
This gives a
O(log(n)) average time for adding or removing
an event, where n is the size of the event list.
Constructor Summary | |
---|---|
SplayTree()
|
Method Summary | ||
---|---|---|
void |
add(Event ev)
Adds a new event in the event list, according to the time of ev. |
|
void |
addAfter(Event ev,
Event other)
Same as add , but adds the new event ev
immediately after the event other in the list. |
|
void |
addBefore(Event ev,
Event other)
Same as add , but adds the new event ev
immediately before the event other in the list. |
|
void |
addFirst(Event ev)
Adds a new event at the beginning of the event list. |
|
void |
clear()
Empties the event list, i.e., cancels all events. |
|
Event |
getFirst()
Returns the first event in the event list. |
|
|
getFirstOfClass(Class<E> cl)
Returns the first event of the class E (a subclass of Event) in the event list. |
|
Event |
getFirstOfClass(String cl)
Returns the first event of the class cl (a subclass of Event) in the event list. |
|
boolean |
isEmpty()
Returns true if and only if the event list is empty (no event is scheduled). |
|
Iterator<Event> |
iterator()
|
|
ListIterator<Event> |
listIterator()
Returns a list iterator over the elements of the class Event in this list. |
|
boolean |
remove(Event ev)
Removes the event ev from the event list (cancels this event). |
|
Event |
removeFirst()
Removes the first event from the event list (to cancel or execute this event). |
|
String |
toString()
|
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public SplayTree()
Method Detail |
---|
public boolean isEmpty()
EventList
isEmpty
in interface EventList
public void clear()
EventList
clear
in interface EventList
public void add(Event ev)
EventList
add
in interface EventList
ev
- event to be addedpublic void addFirst(Event ev)
EventList
addFirst
in interface EventList
ev
- event to be addedpublic void addBefore(Event ev, Event other)
EventList
add
, but adds the new event ev
immediately before the event other in the list.
addBefore
in interface EventList
ev
- event to be addedother
- reference event before which ev will be addedpublic void addAfter(Event ev, Event other)
EventList
add
, but adds the new event ev
immediately after the event other in the list.
addAfter
in interface EventList
ev
- event to be addedother
- reference event after which ev will be addedpublic Event getFirst()
EventList
getFirst
in interface EventList
public Event getFirstOfClass(String cl)
EventList
getFirstOfClass
in interface EventList
public <E extends Event> E getFirstOfClass(Class<E> cl)
EventList
getFirstOfClass
in interface EventList
public Iterator<Event> iterator()
iterator
in interface Iterable<Event>
public ListIterator<Event> listIterator()
EventList
listIterator
in interface EventList
public boolean remove(Event ev)
EventList
remove
in interface EventList
ev
- event to be removed
public Event removeFirst()
EventList
removeFirst
in interface EventList
public String toString()
toString
in class Object
|
SSJ V. 2.6. |
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |