PrintAvlTree

From CMSC 420
Revision as of 20:48, 26 October 2013 by Rforsythe (talk | contribs)

Creates a city (a vertex) with the specified name, coordinates, radius, and color (the last two attributes will be used in later project parts). A city can be successfully created if its name is unique (i.e., there isn't already another city with the same name) and its coordinates are also unique (i.e., there isn't already another city with the same (x,y) coordinate). Names are case-sensitive.

Parameters (In output order)[edit]

  • (none)

Possible <output>[edit]

An <AvlGTree> node will be contained within the output tag and is the root of the AVL-g XML tree. This tag has three required attributes:

  • cardinality, whose value should be the size (number of keys) contained in the tree;
  • height, or the number of levels in the tree (a tree with levels 0 to w-1 has height w );
  • and maxImbalance, the maximum height difference between a node's left and right subtrees (in other words, g ).
  • <node>: Represents a node in the AVL-g tree. This element has two attributes, key and value, which describe the key-value pair contained in the AVL node.
  • <emptyChild>: Represents an empty subtree. This element has no attributes.

Possible <error> types[edit]

  • emptyTree

<success> Example[edit]

   <success>
   <command name="printAvlTree"/>
   <parameters/>
   <output>
     <AvlGTree cardinality="1" height="1" maxImbalance="3">
       <node key="Baltimore" value="(140,37)">
         <emptyChild/>
         <emptyChild/>
       </node>
     </AvlGTree>
   </output>
 </success>