The methodology described here uses dynamic programming to parse a given protein into a set of secondary structures that is optimal relative to a particular objective function. This function is defined so as to present a reasonable measure of the goodness of matching subsequences from the given sequence to a catalog of subsequences whose secondary structures are known. The method identifies secondary structures directly, and does not deal with residue-by-residue states of conformation. It is free of the usual requirements for establishing tuning parameters, thresholds, learning algorithms and the like and while its percent accuracy is high, it is simpler than other prediction schemes.