猿辅导算法一面面经
#过程
整体面试体验很好,期待二面,虽然感觉有点凉。
1、自我介绍
2、项目展开问了一些细节,这个大家自己根据自己的项目准备就好,没有太多参考价值
3、算法题。
3.1 LeetCode 1038. 从二叉搜索树到更大和树。额,面之前没做过这个题,这个题其实还算简单,表示在面试的时候面试官对此题的描述后,我可能没太整明白,在两次询问细节后,概念说错了,导致面试官认为我不太会,很贴心说:”没关系,换个数组题“,然后直接跳过这个题。有点尴尬,如果要说凉的话,可能是这个题扣分比较多。
3.2 数组题,任意一个整型数组,判断是否可以将数组分为三个区间,每个区间中数值的和相同,区间不能为空。时间复杂度要求为O(N)。
3.2 数组题,任意一个整型数组,判断是否可以将数组分为三个区间,每个区间中数值的和相同,区间不能为空。时间复杂度要求为O(N)。
最开始没想出O(N)的,给了一个O(N2)的解法,说完思路后,面试官肯定了解法,问能不能优化到O(N)。想了一会没想出来。然后说先把O(N2)的写出来吧。
果然还是实践出真知,要边写才能有思路,刚写了几行代码就想了一个O(N)的思路。时间复杂度整体在O(2N)-O(3N)的范围,去除系数就是O(N)了。
因为是面经,所以就不粘贴我的代码了,有需要的同学可以看我整理的博客: