1 zlzdbf 2021-07-14 21:37:18 +08:00 看楼主的描述,是全英文面试吗? |
2 neroleewtf OP @zlzdbf 两次都是中文面试 |
3 yifangtongxing28 2021-07-14 21:55:24 +08:00 ![]() 每个大公司的要求都水涨船高,95 后接盘了所有 |
![]() | 4 maketime4life 2021-07-15 00:22:01 +08:00 楼主刷题量有多少? |
5 neroleewtf OP @maketime4life 四百多了,不过因为相当一段时间没看机会,最近一些在重新捡(刷得还挺快,也都能自己写出来),微软题库也启动得比较慢(所以一面出了问题)。第二次的时候微软题库基本刷完 |
![]() | 6 maketime4life 2021-07-15 00:33:37 +08:00 @neroleewtf #5 这刷题量可以啊,都是顺序刷的吗? |
7 neroleewtf OP @maketime4life 并没有,会大致归类,一类题目会归类刷同类型题 |
![]() | 8 maketime4life 2021-07-15 00:49:06 +08:00 @neroleewtf #7 这样还碰到了没刷过的,只能说运气不好了。。。 |
![]() | 9 casparchen 2021-07-15 02:51:45 +08:00 via iPhone 老实讲第一个题没做出来实在不应该,是面试的时候紧张了吗? |
![]() | 10 fl2d 2021-07-15 03:15:17 +08:00 对不起,我看成了 「分享挂两个微信的经验 」 |
![]() | 11 NVDA 2021-07-15 03:18:41 +08:00 出 grey code 挺无聊的… |
12 albertni 2021-07-15 05:50:26 +08:00 via Android 你这个 gray code 确实有问题吧,要么 g ( 0 )返回空,要么 g ( 1 )返回[ 00,01 ],都不能严格算正确。除非你 hard code 了 g ( 0 )和 g ( 1 )两个终止条件 |
![]() | 14 ihainan 2021-07-15 07:14:15 +08:00 微软题库有 1300+ 题,楼主这刷得有点猛啊…… 其实格雷码在首页精选题库的腾讯精选 50 里面,不过还是很难保证面试肯定会遇到相同的题。 |
15 neroleewtf OP @casparchen 因为之前的经历没有走到面试轮,所以确定面试了才开始刷,面到的时候还没刷到 |
16 neroleewtf OP @ihainan 倒是没这么多,leet 的刷完了。要刷 1300+那不可能 |
17 neroleewtf OP @ihainan 论坛也在 leet 刷完之后刷了些,但没算刷了多少道 |
18 Cbdy 2021-07-15 08:32:49 +08:00 via Android ![]() 确实,面试运气很重要, 不过微软你进去的话也可能碰到那种阿里字节等出来脑子不太拎得清的奋斗逼当老板,建议要和实际的工作团队的老板、同事聊聊,身边有这样的例子,试用期没过又跑路了 |
19 ccde8259 2021-07-15 08:38:14 +08:00 via iPhone 第一题被面试官带进沟里了……心疼 |
![]() | 20 sadfQED2 2021-07-15 08:38:53 +08:00 via Android 我和你一样,我也一轮挂。大概 10 分钟问项目,然后就 coding,直接来了道 hard 级别的题目,我第一遍写了个时间 nLogn 的算法,结果面试官不满意,我又写了个时间 n 的算法,结果面试官又说空间不满意,然后我就凉了 |
![]() | 21 tedd 2021-07-15 08:53:24 +08:00 via iPhone 看了,然后又看了下大家的回复,看来我这辈子是没戏了。因为第一题连题都看不懂 |
![]() | 22 wxd92 2021-07-15 09:11:08 +08:00 via iPhone 楼主工作几年? |
23 neroleewtf OP ![]() @wxd92 算毕业到现在 6 年吧,中间有两年算是不务正业创业去了 |
![]() | 24 johnsona 2021-07-15 09:13:55 +08:00 via iPhone @yifangtongxing28 据说早年微软招阿三更离谱 啥都不会的招进去了 |
![]() | 27 bk201 2021-07-15 09:25:14 +08:00 这算是一面都过不了么,后面岂不是更难 |
![]() | 28 johnsona 2021-07-15 09:31:27 +08:00 via iPhone 第一题 按行遍历 每一行第一次越过黑点就改 2 第二次就不改了 至少做得出来 |
![]() | 29 Anshi 2021-07-15 09:48:11 +08:00 刷了 400 多都没过!!!! |
![]() | 30 verzhshq 2021-07-15 09:56:40 +08:00 感谢 加油 |
![]() | 31 JoStar 2021-07-15 10:12:35 +08:00 感谢楼主分享,学习了(虽然我这辈子是与微软无缘了 |
![]() | 33 blindie 2021-07-15 10:28:55 +08:00 via Android @johnsona 你这个算法对于一个没有凹的区域可以 但是涉及有凹的就会有问题。即使改成奇偶数也不能解。第二次越过黑点不能知道是到了外面还是里面。 |
![]() | 34 Cyron 2021-07-15 10:30:52 +08:00 感谢分享经验 |
35 lxy42 2021-07-15 10:56:42 +08:00 第一个算法题我觉得可以用 Union Find 来做, 1 组成的矩形是一个集合, 外层的 0 是一个集合, 内层的 0 是一个集合. |
![]() | 36 xxm459259 2021-07-15 11:03:50 +08:00 社招六年给到 Senior 的概率很小 第二个是隔壁组的 (甚至已经猜到面试官是谁 XD), 这题没秒有点可惜了, 不过有点意外竟然是中文面试...- - |
37 neroleewtf OP @lxy42 并不是矩形,封闭不规则区域。 |
38 neroleewtf OP 第一题大概必然是 floodfill 的一个变种,我一开始主要没确定到起始从哪里来搜索。 |
![]() | 39 hahaayaoyaoyao 2021-07-15 11:37:29 +08:00 |
![]() | 40 hahaayaoyaoyao 2021-07-15 11:38:33 +08:00 横向遍历 判断列的奇偶数 记录行的奇偶数(用以下一行的检查,第一次肯定是边界, 用类似 HashMap 的数据结构记录,get(i).get(j).put(true))) 检查该行下一列状态, 如果是 1 就是边界 如果列是奇数可能在里边 如果上一行也是奇数则必定在里边. 否则一定在外边 |
41 Rwing 2021-07-15 11:46:17 +08:00 挺好的,运气没到而已,可以再接着面 |
42 albertni 2021-07-15 11:58:43 +08:00 via Android @neroleewtf 这题有个取巧的办法,在范围外再加一圈外部格,这样所有外部格必然全联通,之后从左上角开始填色就行了 |
![]() | 43 exploreexe 2021-07-15 12:02:49 +08:00 看来我这辈子是无缘微软了。。。 |
44 dablwow 2021-07-15 13:10:25 +08:00 有人知道第一题的 leet 编号吗 |
45 neroleewtf OP @dablwow 其实我说错了。leet 无原题。但 leet 微软题库里 searching 类别里有一道 floodfill 。当时我还没刷到这道题 |
46 neroleewtf OP @dablwow 另外 leet 直接搜 floodfill 可以看到一些类似的题和类似思路,相关题目有一两题可以用我面试时面试官给的思路求解 |
![]() | 47 p1gd0g 2021-07-15 13:27:24 +08:00 借楼问下,lz 你们直接用 redis 落地吗?内存占用不会很大? |
48 neroleewtf OP @p1gd0g github 搜一下 redislv ( git 里版本很老。) |
49 neroleewtf OP @p1gd0g 另外类似思路还有很多别的方案,谷歌一下 redis rockDB 或者 redis TiDB 都有。 |
![]() | 50 Gea 2021-07-15 16:15:10 +08:00 怎么和我面的 sde2 水品差这么大,尽管我最后也挂了,但是前几面的题真没这么难。。 |
52 lxy42 2021-07-15 16:46:46 +08:00 @neroleewtf 笔误. 不是矩形也可以用 Union Find. |
![]() | 53 lzuntalented 2021-07-15 19:00:45 +08:00 第一题是不是可以理解成判断点是否在区域内, 直接全遍历,每个点都向右辐射到边,遇到奇数个为 1 的点说明在区域内就置为 2 |
![]() | 54 dongfangshangren 2021-07-15 19:08:07 +08:00 @albertni 第一题这个方法是 ok 的,其实不用加外部格,从上下左右 4 条边开始,dfs 搜索染色不规则区域以外的地方(碰到 1 就剪枝),未染色的就是闭合区域了。 其实就是 floodfill 的变种,转换一下思路就可以 |
55 albertni 2021-07-15 19:25:52 +08:00 via Android @dongfangshangren 写起来不如单起始点的 floodfill 简单易懂,所以说是小技巧 |
56 neroleewtf OP @dongfangshangren 这个也是面试官建议的思路。 其实当时对这个思路有一定怀疑是因为,之前 leet 刷的绝大多数题都不需要这样“返工”,外加自己平时做业务的时候被强力灌输了“不要多次 for,循环尽量放一起”的思路(尽管这个思路来做,他的时间复杂度仍然是不会变的。) 再加上对搜索起始点的不确定(我也会在想是不是从某一点或者某条边起始才对),渐渐时间就过去了解不出来。 一面准备匆忙+没刷到 floodfill+一些自己固化的想法综合起来的因素。 |
57 zhzy0077 2021-07-15 21:24:41 +08:00 楼主说英语比较好的话,愿意来我们组试试吗。我们组对英语有点要求所以一直难招人,换句话说可能面试会容易点 不过在上海,可以微信:MTU4NTA1MTU5MTM= |
58 vemier 2021-07-15 21:27:45 +08:00 啊太卷了 |
![]() | 59 tonytonychopper 2021-07-15 22:37:34 +08:00 via iPhone 看了下来,感觉楼主还是得多总结总结,题量不能决定所有 |
![]() | 60 aviator 2021-07-16 09:39:37 +08:00 我目前的状态:菜到安详.jpg |
![]() | 61 p1gd0g 2021-07-16 09:51:57 +08:00 @neroleewtf 感谢。之前项目用的 pika,毛病有点多。 |