1. A computer-implemented method for searching molecules from among a number of molecules to be screened that are similar to a given set of query molecules, comprising the steps of: a) accessing data representing the molecules stored on a computer-readable medium; b) determining maximum common substructures of a given set of molecules based on the data representing the given set of molecules; c) generating a directed acyclic graph of the maximum common substructures (mDAG); d) generating, for each said query molecule, a data set comprising data representing the query molecule, data representing a molecule to be screened locally located in the directed acyclic graph, and data representing their respective maximum common substructure; and e) storing the data; f) wherein all of the foregoing steps are performed using a computer.