> For the complete documentation index, see [llms.txt](https://aaronice.gitbook.io/lintcode/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://aaronice.gitbook.io/lintcode/problem-solving-summary/algorithm-optimization-tips.md).

# Algorithm Optimization Tips

Refer to: <https://www.slideshare.net/gayle2/cracking-the-algorithm-coding-interview-svcc>

* Look for BUD
  * Bottlenecks
  * Unnecessary Work
  * Duplicated Work
* Space & Time Tradeoffs
  * Hash table
  * Precomputing
* Do it yourself
* Programming Optimization: Techniques, examples and discussion [www.azillionmonkeys.com/qed/optimize.html](http://www.azillionmonkeys.com/qed/optimize.html)
* Why every programmer should learn to optimize algorithms - Programiz <https://www.programiz.com/blog/scalability-algorithms>
