# Algorithmic Thinking ![rw-book-cover](https://m.media-amazon.com/images/I/717k0KQY-XL._SY160.jpg) ## Metadata - Author: [[Daniel Zingaro]] - Full Title: Algorithmic Thinking - Category: #data-structures-and-algorithms #c ## Highlights - A data structure is a way to organize data so that desirable operations are fast. ([Location 333](https://readwise.io/to_kindle?action=open&asin=B0BZGZHK3B&location=333)) - An algorithm is a sequence of steps that solves a problem. ([Location 333](https://readwise.io/to_kindle?action=open&asin=B0BZGZHK3B&location=333)) - Sometimes we can make fast algorithms without using sophisticated data structures; other times, the right data structure can offer a significant speed boost. ([Location 334](https://readwise.io/to_kindle?action=open&asin=B0BZGZHK3B&location=334)) - Regular local variables are stored on what’s called the call stack. ([Location 383](https://readwise.io/to_kindle?action=open&asin=B0BZGZHK3B&location=383)) - Enter the static keyword. When used on a local variable, it changes the storage duration from automatic to static, which means that the variable maintains its value between function calls. ([Location 386](https://readwise.io/to_kindle?action=open&asin=B0BZGZHK3B&location=386))