General category of algorithms that work by altering the input to make the problem easier, either by reducing it to some problem whose solution is already known, or by adding structure to the input (such as by sorting it) that allows the problem to be solved quickly. See LevitinBook Chapter 6 for examples.
PineWiki