RATIONALE
Algorithms are used everywhere in computer science. Being able to construct and optimise your own algorithms are crucial, especially if you're attempting to land a software engineering role at a large tech company. Having strong algorithmic knowledge opens doors in:
- Software engineering
- Algorithmic trading
- Machine learning
- Data science
- Formal verification for software
RESOURCES
Courses | School | Prerequisites |
---|---|---|
Introduction to Algorithms | MIT | Maths for CS |
Basic Algorithms | Princeton | Maths for CS |
Advanced Algorithms | Princeton | Maths for CS |
RECOMMENDED BOOKS
Book | Author |
---|---|
The Algorithm Design Manual Hardcover | Steven Skiena |
Introduction to Algorithms | Thomas Cormen |
CHECKLIST SUMMARY
- Complexity analysis
- Recursion
- Sorting
- Searching
- Stacks
- Queues
- Linked lists
- Trees
- Graphs
- Dynamic programming