printf("%s\n", str($obj)); } printf("Using reduce\n"); $tree->reduce(create_function('$sum,$obj', 'printf("%s\\n", str($obj));'), ''); printf("Using accept\n"); $tree->accept(new ReducingVisitor(create_function('$sum,$obj', 'printf("%s\\n", str($obj));'), '')); printf("Withdrawing 4\n"); $obj = $tree->find(box(4)); try { $tree->withdraw($obj); printf("%s\n", str($tree)); } catch (Exception $e) { printf("Caught %s\n", $e->getMessage()); } } /** * Main program. * * @param array $args Command-line arguments. * @return integer Zero on success; non-zero on failure. */ public static function main($args) { printf("AbstractSearchTree main program.\n"); $status = 0; return $status; } } if (realpath($argv[0]) == realpath(__FILE__)) { exit(AbstractSearchTree::main(array_slice($argv, 1))); }
/** * Main program. * * @param array $args Command-line arguments. * @return integer Zero on success; non-zero on failure. */ public static function main($args) { printf("MWayTree main program.\n"); $status = 0; $tree = new MWayTree(3); AbstractSearchTree::test($tree); return $status; }
/** * Main program. * * @param array $args Command-line arguments. * @return integer Zero on success; non-zero on failure. */ public static function main($args) { printf("BinarySearchTree main program.\n"); $status = 0; $bst = new BinarySearchTree(); AbstractSearchTree::test($bst); return $status; }