Index: Tech Interview Walkthrough
In order to prove the worth of this site, I am planning to write a series of posts about writing clean code in CS tech interviews. The entire series will focus on only the basics. Although these topics are supposedly basic stuff, there’s a lot that I didn’t know a year ago, before I got into semi-serious programming training. I will pick interesting problems from Leetcode, group them by similarity, and discuss the tricks to make debugging less painful. Target audience:
- If you are looking for a job in CS;
- and you are not extremely good at it;
- and you often write long and clumsy code very slowly during interviews;
- and you plan on using C++, then my posts might be useful.
If you compete a lot in programming contests, then you probably have seen most of what I will talk about. What this series is NOT:
- Introduction to algorithms: there are many algorithms that I will not cover, simply because there is not a single way to write elegant code for that particular algorithm (for example greedy), or will not be useful in interviews (say, max flow).
- How to get a job offer in a month: after learning the tricks, it takes a lot of practice to know how to apply them.
- Professional C++: you might learn a bit about the language, but I’m not an expert in C++, so you won’t become one by reading my posts.
- ACM programming contests guide: I am simply unqualified to be your coach.
Things to know:
- my code runs on C++11, if you don’t know how to compile, Google it;
- I ignore all the includes, using namespace std and stuff, fix it yourself.
List of topics: 1. STL
- Set, map, vector, pair
- iterator, auto, next_permutation, sort, reverse, swap
- upper_bound, lower_bound
2. Things about arrays
3. Edgy things
4. Linked lists
5. Special topics
Happy coding!