
The Algorithm Design Manual

basis cases, namely the specification of the smallest and simplest objects where the decomposition stops.
Steven S. Skiena • The Algorithm Design Manual
Permutations are likely the object in question whenever your problem seeks an “arrangement,” “tour,” “ordering,” or “sequence.”
Steven S. Skiena • The Algorithm Design Manual
Subsets are likely the object in question whenever your problem seeks a “cluster,” “collection,” “committee,” “group,” “packaging,” or “selection.”
Steven S. Skiena • The Algorithm Design Manual
Points are likely the object in question whenever your problems work on “sites,” “positions,” “data records,” or “locations.”
Steven S. Skiena • The Algorithm Design Manual
Graphs are likely the object in question whenever you seek a “network,” “circuit,” “web,” or “relationship.”
Steven S. Skiena • The Algorithm Design Manual
Polygons and polyhedra are likely the object in question whenever you are working on “shapes,” “regions,” “configurations,” or “boundaries.”
Steven S. Skiena • The Algorithm Design Manual
Order does not matter in subsets
Steven S. Skiena • The Algorithm Design Manual
Trees are likely the object in question whenever your problem seeks a “hierarchy,” “dominance relationship,” “ancestor/descendant relationship,” or “taxonomy.”
Steven S. Skiena • The Algorithm Design Manual
Strings are likely the object in question whenever you are dealing with “text,” “characters,” “patterns,” or “labels.”