Package com.mhhe.clrs2e

Interface Summary
ActivitySelector Interface for a class that determines a maximum set of mutually compatible activities.
BinarySearchTree.Visitor Interface for when we visit a node during a walk.
CountingSort.KeyExtractor Interface that allows us to pull out the sort key from an object.
Dictionary Interface for dictionary data structures, defined on page 197 of Introduction to Algorithms, Second edition.
DisjointSetUnion Interface for a disjoint-set-union data structure from Chapter 21 of Introduction to Algorithms, Second edition.
DoubleValued Interface for an object with a value that is a double.
DynamicSetElement Interface for an element in a dynamic set.
FlowNetworkEdgeIterator Interface for an iterator that returns edges of a flow network.
Graph Interface for graphs, both directed and undirected.
MaxPriorityQueue Interface for a max-priority queue.
MinPriorityQueue Interface for a min-priority queue.
MST Interface for a class that computes a minimum spanning tree.
NonNegativeInteger Interface for integer-valued elements for counting-based sorting.
OrderStatistics Interface for a select method that finds the ith order statistic in an array of Comparable objects.
Queue Interface for a queue.
Sorter Interface for a sorting algorithm.
Stack Interface for a stack.
WeightedEdgeIterator Interface for an iterator that returns weighted edges.
 

Class Summary
Activity A class for activities in the activity-selection problem of Section 16.1 of Introduction to Algorithms, Second edition.
AdjacencyListGraph Implementation of a graph, using adjacency lists.
AdjacencyListGraph.AdjListInfo Inner class for the adjacency list array.
AdjacencyListGraph.Edge Inner class for adjacency list edges.
AdjacencyMatrixGraph Implementation of a graph, using an adjacency matrix.
AllPairsShortestPaths Abstract class for computing all-pairs shortest paths.
APSPMatrixMult Abstract class that defines the extendShortestPaths method used by subclasses of AllPairsShortestPaths.
AssemblyLine Implementation of assembly-line scheduling for two lines, as described in Section 15.1 of Introduction to Algorithms, Second edition.
BellmanFord Implementation of the Bellman-Ford algorithm on page 588 of Introduction to Algorithms, Second edition.
BFS Class that performs a breadth-first search on a graph.
BFSInfo Class for information determined about a vertex by breadth-first search.
BinarySearchTree Implements the Dictionary interface as a binary search tree from Chapter 12 of Introduction to Algorithms, Second edition.
BinomialHeap Implementation of a binomial heap from Chapter 19 of Introduction to Algorithms, Second edition.
BinomialHeap.Handle Inner class for the handle given back to the caller upon an insertion.
BinomialHeap.Node Inner class for a node within a binomial heap.
BTree Implementation of a B-tree from Chapter 18 of Introduction to Algorithms, Second edition.
BTree.BTreeHandle Class to define a handle returned by searches.
BucketSort Sorts an array of DoubleValued in the range [0, 1) via the bucket sort algorithm from page 174 of Introduction to Algorithms, Second edition.
ChainedHashTable Implements a hash table with chaining, as described on page 226 of Introduction to Algorithms, Second edition.
ConnectedComponents Runs the connected components algorithm on page 500 of Introduction to Algorithms, Second edition.
CountingSort Sorts an array of NonNegativeInteger via the counting sort algorithm from page 168 of Introduction to Algorithms, Second edition.
CountingSort.CountingSortKeyExtractor Inner class implementing KeyExtractor, in which each extract method just returns its argument.
DAGShortestPaths Implementation of DAG-Shortest-Paths algorithm on page 592 of Introduction to Algorithms, Second edition.
DeterministicSelect Implements the OrderStatistics interface via the deterministic Select procedure (which runs in linear time in the worst case) from pages 189-190 of Introduction to Algorithms, Second edition.
DFS Class that performs a depth-first search on a graph.
DFSInfo Class for information determined about a vertex by depth-first search.
DifferenceConstraints Class for solving a system of difference constraints, as defined in Section 24.4 of Introduction to Algorithms, Second edition.
DifferenceConstraints.Constraint Inner class for an individual constraint.
Dijkstra Implementation of Dijkstra's algorithm on page 595 of Introduction to Algorithms, Second edition.
Dijkstra.DijkstraInfo Inner class to maintain the Vertex object, key, parent, and handle into the priority queue for each vertex.
DirectAddressTable Implements a direct-address table from page 222 of Introduction to Algorithms, Second edition.
DisjointSetForest Disjoint-set forest implementation of disjoint-set union, as given on page 508 of Introduction to Algorithms, Second edition.
DisjointSetForest.Node Private inner class to serve as opaque handles.
DisjointSetLinkedList Linked-list implementation of disjoint-set union, using the weighted-union heuristic, as given on pages 502-503 of Introduction to Algorithms, Second edition.
DisjointSetLinkedList.DisjointSet Private inner class for each disjoint set.
DisjointSetLinkedList.Node Private inner class for nodes of the list.
DoubleHashingHashTable Implements a hash table with double hashing as described on pages 240-241 of Introduction to Algorithms, Second edition.
DynamicSetElement.Helper Inner class to define static helper methods.
EdmondsKarp Implements the Edmonds-Karp algorithm for maximum flow from Section 26.2 of Introduction to Algorithms, Second edition.
EdmondsKarp.EKInfo Inner class for the information found by a breadth-first search in the Edmonds-Karp algorithm.
FasterAllPairsShortestPaths Implements the Faster-All-Pairs-Shortest-Paths procedure on page 627 of Introduction to Algorithms, Second edition.
FibHeap Implementation of a Fibonacci heap from Chapter 20 of Introduction to Algorithms, Second edition.
FibHeap.Node Inner class for a node within a Fibonaaci heap.
FlowNetwork Implementation of a flow network, using adjacency lists.
FlowNetwork.FlowNetworkEdge Inner class for flow network edges in adjacency lists.
FloydWarshall Implements the Floyd-Warshall algorithm for all-pairs shortest paths from page 630 and the Transitive-Closure algorithm from page 633 of Introduction to Algorithms, Second edition.
GreedyActivitySelector Implements the Greedy-Activity-Selector algorithm from page 378 of Introduction to Algorithms, Second edition.
Heap Abstract base class for both binary min-heaps and binary max-heaps.
Heap.Handle Nested class for handles within a heap.
Heapsort A wrapper class to perform heapsort.
Huffman Implements Huffman's algorithm as described in Section 16.3 of Introduction to Algorithms, Second edition.
Huffman.InternalNode Inner class for an internal node in a Huffman tree.
Huffman.Node Inner class for a node in a Huffman tree.
Huffman.PrefixCodeItem Inner class for an item in a prefix code.
InsertionSort Implements the Sorter interface via insertion sort from page 17 of Introduction to Algorithms, Second edition.
Interval Implements an interval whose endpoints are real numbers.
IntervalTree Implements an interval tree as described in Section 14.3 of Introduction to Algorithms, Second edition.
Johnson Class to implement Johnson's all-pairs shortest-paths algorithm on page 639 of Introduction to Algorithms, Second edition.
Kruskal Implements Kruskal's algorithm for minimum spanning tree from page 569 of Introduction to Algorithms, Second edition.
Kruskal.WeightedEdge Inner class for weighted edges so that the edges can be sorted and considered in nondecreasing order by weight.
LinearDLL A simple linear, doubly linked list without a sentinel from pages 205-206 of Introduction to Algorithms, Second edition.
LinearDLLDictionary A simple linear, doubly linked list without a sentinel but with a search method.
LinearProbingHashTable Implements a hash table with linear probing as described on page 239 of Introduction to Algorithms, Second edition.
LinkedList Abstract class for a doubly linked list in Section 10.2 of Introduction to Algorithms, Second edition.
LinkedList.Node Inner class for nodes of a linked list.
LongestCommonSubsequence Implements the dynamic-programming algorithm to find a longest common subsequence of two strings, as described in Section 15.4 of Introduction to Algorithms, Second edition.
LongestCommonSubsequence.Direction Inner class for a typesafe enum pattern for directions in a two-dimensional array.
MatrixChainMultiply Implements the dynamic-programming algorithm to determine the optimal order in which to multiply a chain of matrices, as described in Section 15.2 of Introduction to Algorithms, Second edition.
MaxFlow Abstract class for a maximum-flow algorithm.
MaxHeap Implements a binary max-heap, based on Chapter 6 of Introduction to Algorithms, Second edition.
MaxHeapPriorityQueue Implements a max-priority queue by a max-heap, based on Chapter 6 of Introduction to Algorithms, Second edition.
MergeableHeap Abstract class for mergeable heap data structures, defined on page 455 of Introduction to Algorithms, Second edition.
MergeSort Implements the Sorter interface via merge sort from pages 29 and 32 of Introduction to Algorithms, Second edition.
MinHeap Implements a binary min-heap, based on Chapter 6 of Introduction to Algorithms, Second edition.
MinHeapPriorityQueue Implements a min-priority queue by a min-heap, based on Chapter 6 of Introduction to Algorithms, Second edition.
MinMax Implements Minimum and Maximum from page 184 of Introduction to Algorithms, Second edition.
MultiplicationMethod Implements the multiplication method of hashing on pages 231-232 of Introduction to Algorithms, Second edition.
OpenAddressingHashTable Abstract base class for hash tables that use open addressing, as described on pages 237-241 of Introduction to Algorithms, Second edition.
OptimalBinarySearchTree Implements the dynamic-programming algorithm to determine the structure of an optimal binary search tree, as described in Section 15.5 of Introduction to Algorithms, Second edition.
OrderStatisticTree Implements an order-statistic tree as described in Section 14.1 of Introduction to Algorithms, Second edition.
Partitioner Class for partitioning an array of Comparable objects.
Prim Implements Prim's algorithm for minimum spanning tree from page 572 of Introduction to Algorithms, Second edition.
Prim.PrimInfo Inner class to maintain the Vertex object, key, parent, and handle into the priority queue for each vertex.
QuadraticProbingHashTable Implements a hash table with quadratic probing as described on pages 239-240 of Introduction to Algorithms, Second edition.
QueueArray Implements a queue from page 203 of Introduction to Algorithms, Second edition.
QueueList Defines a queue based on a SentinelDLL.
Quicksort Implements the Sorter interface via quicksort from page 146 of Introduction to Algorithms, Second edition.
RadixSort Sorts an array of NonNegativeInteger via the radix sort algorithm from page 172 of Introduction to Algorithms, Second edition.
RadixSort.RadixKeyExtractor Interface that allows us to pull out the sort key from an object.
RandomizedPartitioner Class for doing random partitioning on an array of Comparable objects.
RandomizedQuicksort Implements the Sorter interface via randomized quicksort from page 154 of Introduction to Algorithms, Second edition.
RandomizedSelect Implements the OrderStatistics interface via the Randomized-Select procedure (which runs in linear expected time) from page 186 of Introduction to Algorithms, Second edition.
RecursiveActivitySelector Implements the Recursive-Activity-Selector algorithm from page 376 of Introduction to Algorithms, Second edition.
RedBlackTree Implements the Dictionary interface as a red-black tree from Chapter 13 of Introduction to Algorithms, Second edition.
SCC Class to perform the Strongly-Connected-Components procedure on page 554 of Introduction to Algorithms, Second edition.
SentinelDLL A circular, doubly linked list with a sentinel from pages 206-207 of Introduction to Algorithms, Second edition.
SentinelDLLDictionary A circular, doubly linked list with a sentinel with a search method.
ShortestPathInfo Class for information determined about a vertex during a shortest-path algorithm.
SingleSourceShortestPaths Abstract class for computing single-source shortest paths.
SlowAllPairsShortestPaths Implements the Slow-All-Pairs-Shortest-Paths procedure on page 625 of Introduction to Algorithms, Second edition.
SortableSentinelDLL Circular, doubly linked list with a sentinel, that also has a sort method.
StackArray Implements an elementary stack from page 201 of Introduction to Algorithms, Second edition.
TopoSort Class that topologically sorts a DAG.
Vertex A class for vertices in graphs.
WeightedAdjacencyListGraph Implementation of a weighted graph, using adjacency lists.
WeightedAdjacencyListGraph.WeightedEdge Inner class for weighted edges in adjacency lists.
WeightedAdjacencyMatrixGraph Implementation of a weighted graph, using an adjacency matrix.
 

Exception Summary
DeleteSentinelException Exception thrown upon an attempt to delete the sentinel.
DifferenceConstraints.BadConstraintException Inner class for a bad constraint exception.
DisjointSetLinkedList.DisjointSetUnionException Inner class for an exception that occurs if either set to be united is empty.
HashTableOverflow Exception thrown if an attempt is made to overfill an open-addressed hash table.
HeapUnderflowException Exception thrown in case of a heap underflow.
KeyUpdateException Exception thrown in case of a bad increase/decrease key operation.
NegativeIntegerException Exception for when a negative integer is passed as a key to a NonNegativeInteger.
OrderStatisticTree.SizeException Exception thrown by OrderStatisticTree.actualSize() if the size of the subtree does not agree with the size field of the subtree's root node.
RedBlackTree.BlackHeightException Exception thrown by RedBlackTree.blackHeight(com.mhhe.clrs2e.RedBlackTree.Node) if the black-height of a node is ill-defined.
StackUnderflowException Exception thrown in case of trying to pop an empty stack.