Houzz 电面+onsite百分百挂经

超喜欢他家office呀,可能真的是女生的dream company了,然后水平太菜,就发个百分百跪经吧。
general的sde new grad岗

电面一,lc 224,227。电面二是自己出的题比较长记不太清了。
昂赛第一轮,sort 只有1-10个distinct number的list。
第二轮 lc 785,和一些os,database的基本概念。
然后一个半小时的lunch break之后进入血跪阶段,面到最后无地自容。
第三轮,简历把每一个project的每一个细节都问的清清楚楚,lc31,https://leetcode.com/problems/next-permutation/ 。 第二题是给一个range 1-n,如果n=5给出a = [2,3,1,4,5],b由a得出,从位于当前数字index后面的数中,数出比当前数字小的个数,所以b = [1,1,0,0,0]。然后现在知道b反推a。。在面试官的直白提醒下才写出了代码。。a=[1,2, 3,4,5], b = [1,1,0,0,0]. 那么第一次b.pop(1), b.pop(1), b.pop(0), b.pop(0), b.pop(0), 就得到[2,3,1,4,5]了。
b的第0位代表比所有的在a的index,把这个数从a里pop出去之后,把b的第0位也pop出去,每次都只看b的第0位。因为a里的数字是unique和b的长度是一样的,b是1的话就只比所有的数字大1位,就位于a的第1位。哦不对说错了,不是a,把所有的a替换成c= range(n)

你每次从b pop一个数字之后,更新c中剩余的数
b = [1,1,0,0,0]
c = [1,2,3,4,5]
-> pop得到2
b = [1,0,0,0]
c = [1,3,4,5]
-> pop得到3
然后就直接叫remove function。把2删掉…
总的是O(n^2)

第四轮,面试官一进来看到还没擦掉的上一道题,好奇的问了问这是个什么题,我说完了之后他陷入了沉思,然后后来他说我这个人不喜欢出tricky的题,于是他给我出了三道hard和一道easy,lc 10,121,123,188,最后再让design可一个search。

面完之后我觉得已经百分百凉了,因为最后两轮有两道题hint要的实在是太多了,只怪自己刷题不精,最后hr还进来和我说周一会和我打电话先聊聊team的preference,周末让我好好想想,周二可以和feedback一起递给hc看,然而我当时内心只想说,这么烂的feedback,估计是不用进hc了。。