Iterationen im sortierten binären Baum

 [Vorheriges Kapitel]  [Vorherige Seite]  [Inhaltsverzeichnis]  [Nächste Seite]  [Nächstes Kapitel]

SortedBinaryTrees.om
PROCEDURE First(tree: Tree;
                VAR object: Objects.Object) : BOOLEAN;
   (* returns first object in tree *)
   VAR
      node: Node;
BEGIN
   IF tree.root = NIL THEN RETURN FALSE END;
   node := tree.root;
   WHILE node.left # NIL DO
      node := node.left;
   END;
   object := node.object;
   RETURN TRUE
END First;

PROCEDURE Last(tree: Tree;
               VAR object: Objects.Object) : BOOLEAN;
   (* returns last object in tree *)
   VAR
      node: Node;
BEGIN
   IF tree.root = NIL THEN RETURN FALSE END;
   node := tree.root;
   WHILE node.right # NIL DO
      node := node.right;
   END;
   object := node.object;
   RETURN TRUE
END Last;

 [Vorheriges Kapitel]  [Vorherige Seite]  [Inhaltsverzeichnis]  [Nächste Seite]  [Nächstes Kapitel]
Copyright © 1999 Andreas Borchert, in HTML konvertiert am 29.06.1999