Dynamic programming is an optimization technique used in mathematics and computer science. It solves problems by recursively solving the subproblems that have overlapping substructures and then combining the solutions to these subproblems.
Keywords: optimization algorithm; sequence alignment; RNA secondary structure; gene-finding; hidden Markov model




