|
PROCEDURE InitQueue(VAR queue: QueueOfRequests); BEGIN queue.length := 0; queue.head := NIL; queue.tail := NIL; END InitQueue; PROCEDURE AddRequest(VAR queue: QueueOfRequests; request: Request); VAR element: Element; BEGIN NEW(element); element.request := request; element.next := NIL; IF queue.head = NIL THEN queue.head := element; ELSE (* queue.tail # NIL *) queue.tail.next := element; END; queue.tail := element; INC(queue.length); END AddRequest; |
Es gilt die Invariante: Entweder sind sowohl
queue.head und queue.tail gleich NIL oder
beide ungleich NIL.
|
Copyright © 1999, 2004 Andreas F. Borchert, in HTML konvertiert am 28.01.2005 |