avatar
C*m
1
前两天面了GG, 刚收到feedback说通过. 下面是面经:
白人小伙, 一上来什么都没说,直接开题.
第一题: 实现搜索框的提示功能, 用户输入一个或者一部分字符后, 算法输出所有
match的字符串.
给了三种方案, 一种是简单的直接brute force; 第二种是trie; 第三种是类似正则表
达式的做法; 面试官说用trie来实现吧. 先构建trie, 然后把搜索函数写出来. 没什么
好说的 从头开始写. 完成后写了个简单的test case, 和他一起过了一遍;
第二题, deep copy linked list. 给了两种方案, 一是hashmap based Time O(n) +
Space O(n); 一是直接对List拆分deep拷贝 然后再恢复原list Time O(n) + Space O(
1)。
面试官让分析了下两种方法的优劣. 然后说实现下第二种吧. 我刚把思路说完正打算写
代码, 然后考官打断说时间不太够了,实现第一种吧. 于是一口气写完. 给了个test
case过了一遍. 最后考官问代码里有没有问题, 我又从头仔细和他过了一遍,没发现.
问他给点提示, 他说他也没发现... 于是让问问题. 结束.
分享给大家,希望有所帮助.
avatar
h*c
2
deep copy drama
A {
B& b
}
B {
A& a
}
avatar
s*k
3
Phone or onsite?

O(

【在 C******m 的大作中提到】
: 前两天面了GG, 刚收到feedback说通过. 下面是面经:
: 白人小伙, 一上来什么都没说,直接开题.
: 第一题: 实现搜索框的提示功能, 用户输入一个或者一部分字符后, 算法输出所有
: match的字符串.
: 给了三种方案, 一种是简单的直接brute force; 第二种是trie; 第三种是类似正则表
: 达式的做法; 面试官说用trie来实现吧. 先构建trie, 然后把搜索函数写出来. 没什么
: 好说的 从头开始写. 完成后写了个简单的test case, 和他一起过了一遍;
: 第二题, deep copy linked list. 给了两种方案, 一是hashmap based Time O(n) +
: Space O(n); 一是直接对List拆分deep拷贝 然后再恢复原list Time O(n) + Space O(
: 1)。

avatar
y*e
4
第一题应该怎么做啊? lz请明示。。。
avatar
g*s
5
楼主拿到offer没。你工作经验几年。
avatar
r*7
6
为什么就两轮。。。
deep copy linked list,如果只有next指针,为什么要hashmap?存一个prev就行了啊

O(

【在 C******m 的大作中提到】
: 前两天面了GG, 刚收到feedback说通过. 下面是面经:
: 白人小伙, 一上来什么都没说,直接开题.
: 第一题: 实现搜索框的提示功能, 用户输入一个或者一部分字符后, 算法输出所有
: match的字符串.
: 给了三种方案, 一种是简单的直接brute force; 第二种是trie; 第三种是类似正则表
: 达式的做法; 面试官说用trie来实现吧. 先构建trie, 然后把搜索函数写出来. 没什么
: 好说的 从头开始写. 完成后写了个简单的test case, 和他一起过了一遍;
: 第二题, deep copy linked list. 给了两种方案, 一是hashmap based Time O(n) +
: Space O(n); 一是直接对List拆分deep拷贝 然后再恢复原list Time O(n) + Space O(
: 1)。

avatar
y*e
7
我觉得是那个有random pointer的linked list。。。。如果只有next pointer,没啥
考点啊。。

【在 r****7 的大作中提到】
: 为什么就两轮。。。
: deep copy linked list,如果只有next指针,为什么要hashmap?存一个prev就行了啊
:
: O(

avatar
C*m
8
电面 对 有random pointer的那道题

【在 y*****e 的大作中提到】
: 我觉得是那个有random pointer的linked list。。。。如果只有next pointer,没啥
: 考点啊。。

avatar
C*m
9
phone

【在 s********k 的大作中提到】
: Phone or onsite?
:
: O(

avatar
C*m
10
here is mine...
(1) build a trie
(2) locate the first node in the trie corresponding to the last character of
the user input string
(3) print out the user input + all the paths in the subtree of this node
e.g.,
a
b c l
d e f
user input: ab
the find b first,
print out
a + all paths(bd, be)
--> abd abe

【在 y*****e 的大作中提到】
: 第一题应该怎么做啊? lz请明示。。。
avatar
j*3
11
赞啊,这个不是发bb面经那个么?
avatar
C*m
12
New grads还没毕业

【在 g**s 的大作中提到】
: 楼主拿到offer没。你工作经验几年。
avatar
C*m
13
是呀 别人肉哈

【在 j**********3 的大作中提到】
: 赞啊,这个不是发bb面经那个么?
avatar
l*8
14
这里的path是到叶子节点,还是到每一个节点都是一条path

of

【在 C******m 的大作中提到】
: here is mine...
: (1) build a trie
: (2) locate the first node in the trie corresponding to the last character of
: the user input string
: (3) print out the user input + all the paths in the subtree of this node
: e.g.,
: a
: b c l
: d e f
: user input: ab

avatar
l*8
15
能否具体说下第二道题,random pointer是什么?

O(

【在 C******m 的大作中提到】
: 前两天面了GG, 刚收到feedback说通过. 下面是面经:
: 白人小伙, 一上来什么都没说,直接开题.
: 第一题: 实现搜索框的提示功能, 用户输入一个或者一部分字符后, 算法输出所有
: match的字符串.
: 给了三种方案, 一种是简单的直接brute force; 第二种是trie; 第三种是类似正则表
: 达式的做法; 面试官说用trie来实现吧. 先构建trie, 然后把搜索函数写出来. 没什么
: 好说的 从头开始写. 完成后写了个简单的test case, 和他一起过了一遍;
: 第二题, deep copy linked list. 给了两种方案, 一是hashmap based Time O(n) +
: Space O(n); 一是直接对List拆分deep拷贝 然后再恢复原list Time O(n) + Space O(
: 1)。

avatar
C*m
16
到子树的叶节点

【在 l*****8 的大作中提到】
: 这里的path是到叶子节点,还是到每一个节点都是一条path
:
: of

avatar
C*m
17
除了正常的next, 另外加的random pointer 随机指向任意一个节点 或者是null
比如
c a null a
| | | |
a --> b -- > c-- > d

【在 l*****8 的大作中提到】
: 能否具体说下第二道题,random pointer是什么?
:
: O(

avatar
l*8
18
哦,那hashmap based就是和clone graph一样的思路;第二种 直接对List拆分deep拷
贝是什么思路?

【在 C******m 的大作中提到】
: 除了正常的next, 另外加的random pointer 随机指向任意一个节点 或者是null
: 比如
: c a null a
: | | | |
: a --> b -- > c-- > d

avatar
s*7
19
第一道,自己构建trie要写多少代码呀,这么短的时间,请问如何写trie class的简短
实现代码, 准备背一下了。
avatar
C*m
20
是挺多的 最好提前准备下

【在 s******7 的大作中提到】
: 第一道,自己构建trie要写多少代码呀,这么短的时间,请问如何写trie class的简短
: 实现代码, 准备背一下了。

avatar
C*m
21
step 1: copy next node
step 2: copy random node
step 3: split the list

【在 l*****8 的大作中提到】
: 哦,那hashmap based就是和clone graph一样的思路;第二种 直接对List拆分deep拷
: 贝是什么思路?

avatar
j*3
22
没人肉,你头像有特点

【在 C******m 的大作中提到】
: 是呀 别人肉哈
avatar
f*s
23
LZ面的是software developer?
avatar
C*m
24
New grads software eng

【在 f********s 的大作中提到】
: LZ面的是software developer?
相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。