General Advice
- 理清楚需求,问清楚边界条件,系统限制,异常情况该如何处理。
- 解释清楚你的算法,必要的话可以画图或者写伪代码来解释。
- 等面试官认可你的算法之后,用代码去实现你的算法。在写代码过程中,可以写一段然后说一下,自己现在要干什么干什么,确保面试官一直在跟着你的思路。也做好随时回答面试官问题的准备。
- 写完实现以后,主动写测试案例。通过自己的测试案例找出 bug 其实是加分项。设计好测试案例,测试案例要有代表性。
- 讲一下自己算法的时间复杂度和空间复杂度,然后等面试官有没有其他问题。
Algorithms
Array
convert every elements to negative to represent this element is already queried
|
|
Sliding Window
Generally, the sliding window problems have some kind of aggregate, atMost k, largest substring, min substring with k etc. They’re always “given an array or string, find some computed sub problem” value.
Sliding Window ProblemSet
Binary Search
- correctly initialize the boundary variables
l
andr
. Only one rule: set up the boundary to include all possible elements - Decide return value.After exiting the while loop,
l
is the minimal k satisfying thecondition
function - Design the
condition
function
|
|