A space-time tradeoff in computer science refers to situations where memory use can be reduced by increasing computation time, or vice versa. As hardware costs have changed over time, with storage becoming cheaper relative to other components, the optimal approach to these tradeoffs has also changed. Exploiting space-time tradeoffs is common in algorithms using lookup tables, data compression/storage, and other techniques such as loop unrolling.