Redian新闻
>
面试时候差点想直接推门走,真有这感觉!
avatar
面试时候差点想直接推门走,真有这感觉!# JobHunting - 待字闺中
j*T
1
【 以下文字转载自 SanFrancisco 讨论区 】
发信人: hzylc (none), 信区: SanFrancisco
标 题: 冲动打911,lg被带走了。
发信站: BBS 未名空间站 (Sat Jun 5 04:51:30 2010, 美东)
大家请先别骂我了,我现在头很晕,像做梦一样。 我刚才赶到police department时,
说是已经做
好笔录,送到jail去了,我现在只能等。
帮帮我怎么办? 怎么找律师? 怎么去drop case? 我想让他快点出来,我不想让他历
史有污点。 他
不是坏人,我们从高中就认识了,是我太冲动了,太冲动了。。。
avatar
g*o
2
我骑驴找马,昨天经历一次难忘的面试。
去到一看,这公司还不如我目前这个驴公司,小小楼里面的第二层。当我进去主工作室
,一台桌球居然摆在正门口!!!!!!我擦,这是什么工作环境?旁边是一堆吃的和
喝的,我问这是为周五准备的吗?答曰平时就这样。我想走的心从看到桌球台那一刻起
就有了。心想就纯粹为了做做题来吧。谁知道最坑爹的做题开始了:
这是一道让我不知怎么样说才好题:“给我两个空函数,一个是响应服务器的函数void
handleRequest(),一个是get过去10秒内服务区平均每秒响应数的函数 double
getRequestAve()。请实现吧。”就这样,一大个白版,两个空函数,实现吧。没有给
任何其他信息!!!!就三个字,实现吧!!!我去啊!!!!!大哥!!你是要考我
什么啊?我不懂你们系统是怎么实现这个的,但这个重要吗?算法不考?C/c++能力不
考? 被我问了半天,说让我建一个全局变量记录响应数,好吧,你不能早说吗?再继
续问,他说让我用linux的系统函数可以拿到当前时间。好吧。到底后面这函数什么时
候被调用的,有没有其他一个进程间隔性地调用它?
好吧,我不会做。请问大家,这怎么做?我没搞过这方面,不会就不会吧。我后来有点
不爽,反问到what answer were you expecting? 然后被告知没有下一轮了,你可以
走了。我想走就走吧,早就想走了。
我真的很讨厌这样不伦不类的考题,条件很少,他说要考我的逻辑,对这题我没有任何
逻辑。我就是不知道怎么拿过去10秒内的总响应数,这很重要吗?我简历上没有关于这
方面的经历,当初电面的时候另一个问了我很多算法,才让我来on-site的。我对你们
系统怎么拿过去10秒内的响应数不了解,很过分吗?
avatar
G*o
3
1 - 问清楚是不是公诉。如果是公诉,比较麻烦。
2 - 找律师用处不大,也不值得。交几千块只是给你出几个大家都知道的主意。要律师
帮你打官司,要几万块还不一定赢。
3 - 如果是公诉 - 认罪 = 上18个月的anger management + 义务劳动 = 应该可以洗掉
public record. (洗掉 = not visible but still exist)
- 不认罪 = 打官司,不一定值
4 - 如果不是公诉,是你告他 = drop
avatar
y*g
4
桌球台有什么不好的?
avatar
c*9
5
冲动是魔鬼
avatar
f*4
6
这道题有人报过面经,不过当时貌似也讨论出个所以然来。。
avatar
m*n
7
是该离婚了。

【在 j*******T 的大作中提到】
: 【 以下文字转载自 SanFrancisco 讨论区 】
: 发信人: hzylc (none), 信区: SanFrancisco
: 标 题: 冲动打911,lg被带走了。
: 发信站: BBS 未名空间站 (Sat Jun 5 04:51:30 2010, 美东)
: 大家请先别骂我了,我现在头很晕,像做梦一样。 我刚才赶到police department时,
: 说是已经做
: 好笔录,送到jail去了,我现在只能等。
: 帮帮我怎么办? 怎么找律师? 怎么去drop case? 我想让他快点出来,我不想让他历
: 史有污点。 他
: 不是坏人,我们从高中就认识了,是我太冲动了,太冲动了。。。

avatar
g*o
8

太不正经了吧,里面人全在上班,一转头能看到有人打桌球!

【在 y*******g 的大作中提到】
: 桌球台有什么不好的?
avatar
l*8
9
不用找律师,不上诉就行了,接着等吧。
不会有事的,不过估计你老公有个把星期不能回家吧
avatar
d*e
10
好像那些大公司都这样。。。

【在 g********o 的大作中提到】
:
: 太不正经了吧,里面人全在上班,一转头能看到有人打桌球!

avatar
n*a
11
又一个傻女人。
要不就是不想过了。
avatar
g*o
12

求指教!

【在 f********4 的大作中提到】
: 这道题有人报过面经,不过当时貌似也讨论出个所以然来。。
avatar
g*o
13

那桌球台和办工桌不是分开的,而是全在一个大房间里面!如果专门有个房间,gym之
类的那没问题。

【在 d**e 的大作中提到】
: 好像那些大公司都这样。。。
avatar
r*e
14
这题考的是设计,跟算法C++什么的没关系吧
一点想法:
一个全局变量记录响应数totalReqCount;
一个queue Q,每个元素是 pair
in handleRequest()
T = currentTime;
while Q.front.first < T - 10
totalReqCount -= Q.front.second
Q.pop
if Q.empty || Q.back.first != currentTime
Q.push(pair(currentTime, 1))
else
Q.back.second++;
totalReqCount++;
in getRequestAve()
T = currentTime;
while Q.front.first < T - 10
totalReqCount -= Q.front.second
Q.pop
return totalReqCount / 10

void

【在 g********o 的大作中提到】
: 我骑驴找马,昨天经历一次难忘的面试。
: 去到一看,这公司还不如我目前这个驴公司,小小楼里面的第二层。当我进去主工作室
: ,一台桌球居然摆在正门口!!!!!!我擦,这是什么工作环境?旁边是一堆吃的和
: 喝的,我问这是为周五准备的吗?答曰平时就这样。我想走的心从看到桌球台那一刻起
: 就有了。心想就纯粹为了做做题来吧。谁知道最坑爹的做题开始了:
: 这是一道让我不知怎么样说才好题:“给我两个空函数,一个是响应服务器的函数void
: handleRequest(),一个是get过去10秒内服务区平均每秒响应数的函数 double
: getRequestAve()。请实现吧。”就这样,一大个白版,两个空函数,实现吧。没有给
: 任何其他信息!!!!就三个字,实现吧!!!我去啊!!!!!大哥!!你是要考我
: 什么啊?我不懂你们系统是怎么实现这个的,但这个重要吗?算法不考?C/c++能力不

avatar
W*e
15

不懂设计怎么办

【在 r*******e 的大作中提到】
: 这题考的是设计,跟算法C++什么的没关系吧
: 一点想法:
: 一个全局变量记录响应数totalReqCount;
: 一个queue Q,每个元素是 pair
: in handleRequest()
: T = currentTime;
: while Q.front.first < T - 10
: totalReqCount -= Q.front.second
: Q.pop
: if Q.empty || Q.back.first != currentTime

avatar
d*n
16
dropbox 电面就是这个问题,不要想得太复杂可以了……
avatar
A*t
17
呵呵,Google 是就是这样的

【在 g********o 的大作中提到】
:
: 那桌球台和办工桌不是分开的,而是全在一个大房间里面!如果专门有个房间,gym之
: 类的那没问题。

avatar
s*e
18
Besides the data structure and algorithm, you also need to void effectively
making handleRquest/getRequetAve in a single-threaded mode, since this is on
server side...
avatar
w*e
19
This is called 'dealing w/ ambiguity'. It is your responsibility to narrow
down the scope of the question by asking a lot of questions before you do
any analysis/coding.
avatar
c*o
20
桌球这个你反应有点过。没看出来有什么不妥。
你面试的是不是senior的职位?那个问题像是看你怎么解决一个定义不太清楚的问题。
这个在工作中常见的是客户有一些新的需求,你需要和客户交流把需求细化成可以实现
的项目。在面试中你可以把面试官当成客户,逐步了解清楚他具体想要你做什么。

void

【在 g********o 的大作中提到】
: 我骑驴找马,昨天经历一次难忘的面试。
: 去到一看,这公司还不如我目前这个驴公司,小小楼里面的第二层。当我进去主工作室
: ,一台桌球居然摆在正门口!!!!!!我擦,这是什么工作环境?旁边是一堆吃的和
: 喝的,我问这是为周五准备的吗?答曰平时就这样。我想走的心从看到桌球台那一刻起
: 就有了。心想就纯粹为了做做题来吧。谁知道最坑爹的做题开始了:
: 这是一道让我不知怎么样说才好题:“给我两个空函数,一个是响应服务器的函数void
: handleRequest(),一个是get过去10秒内服务区平均每秒响应数的函数 double
: getRequestAve()。请实现吧。”就这样,一大个白版,两个空函数,实现吧。没有给
: 任何其他信息!!!!就三个字,实现吧!!!我去啊!!!!!大哥!!你是要考我
: 什么啊?我不懂你们系统是怎么实现这个的,但这个重要吗?算法不考?C/c++能力不

avatar
G*M
21
楼主反应太过了。
其实这个题貌似也很清楚。系统收到request 会调用handleRequest,如何实现一个get
过去10秒内服务器平均每秒响应数的函数。
这个不比那些考背题的更有意思?

【在 c******o 的大作中提到】
: 桌球这个你反应有点过。没看出来有什么不妥。
: 你面试的是不是senior的职位?那个问题像是看你怎么解决一个定义不太清楚的问题。
: 这个在工作中常见的是客户有一些新的需求,你需要和客户交流把需求细化成可以实现
: 的项目。在面试中你可以把面试官当成客户,逐步了解清楚他具体想要你做什么。
:
: void

avatar
z*o
22
"仰天大笑出门去,我辈岂是蓬蒿人"
avatar
b*k
23
惊奇地发现这三个字反过来念也是一个意思。

【在 y*******g 的大作中提到】
: 桌球台有什么不好的?
avatar
g*o
24

当时面试官貌似没啥耐心,我也是一根筋没转过来,卡主了。。。

【在 c******o 的大作中提到】
: 桌球这个你反应有点过。没看出来有什么不妥。
: 你面试的是不是senior的职位?那个问题像是看你怎么解决一个定义不太清楚的问题。
: 这个在工作中常见的是客户有一些新的需求,你需要和客户交流把需求细化成可以实现
: 的项目。在面试中你可以把面试官当成客户,逐步了解清楚他具体想要你做什么。
:
: void

avatar
L*a
25
LZ自己弱还牛B轰轰的样子
avatar
H*r
26
台球台还不好?正对俺胃口杂破?
可惜

★ 发自iPhone App: ChineseWeb 7.8

【在 g********o 的大作中提到】
: 我骑驴找马,昨天经历一次难忘的面试。
: 去到一看,这公司还不如我目前这个驴公司,小小楼里面的第二层。当我进去主工作室
: ,一台桌球居然摆在正门口!!!!!!我擦,这是什么工作环境?旁边是一堆吃的和
: 喝的,我问这是为周五准备的吗?答曰平时就这样。我想走的心从看到桌球台那一刻起
: 就有了。心想就纯粹为了做做题来吧。谁知道最坑爹的做题开始了:
: 这是一道让我不知怎么样说才好题:“给我两个空函数,一个是响应服务器的函数void
: handleRequest(),一个是get过去10秒内服务区平均每秒响应数的函数 double
: getRequestAve()。请实现吧。”就这样,一大个白版,两个空函数,实现吧。没有给
: 任何其他信息!!!!就三个字,实现吧!!!我去啊!!!!!大哥!!你是要考我
: 什么啊?我不懂你们系统是怎么实现这个的,但这个重要吗?算法不考?C/c++能力不

avatar
g*o
27

小角落的二楼的一家公司,门口还要一台球桌

【在 H****r 的大作中提到】
: 台球台还不好?正对俺胃口杂破?
: 可惜
:
: ★ 发自iPhone App: ChineseWeb 7.8

avatar
g*o
28

心情不好,发发牢骚,不喜误入

【在 L**a 的大作中提到】
: LZ自己弱还牛B轰轰的样子
avatar
w*y
29
我也遇到了
当时还是经验少啊, 直接就晕了

【在 d*****n 的大作中提到】
: dropbox 电面就是这个问题,不要想得太复杂可以了……
avatar
P*t
30
这题其实蛮好的。。。
avatar
B*i
31
脾气还蛮大的。

【在 g********o 的大作中提到】
:
: 心情不好,发发牢骚,不喜误入

avatar
g*o
32

求指教,怎么做?

【在 P***t 的大作中提到】
: 这题其实蛮好的。。。
avatar
l*7
33
yes.I saw a slide in lobby room.

【在 A*****t 的大作中提到】
: 呵呵,Google 是就是这样的
avatar
f*t
34
面试场地很好,面试题也不难,楼主反应过激了
avatar
s*e
35

Yes. Basically a good answer should consider all major aspects for a server
process.
1. A good data structure balance both memory usage and performance
2. If using shared data, synchronization might be necessary. Otherwise, copy
on write can be an option depending on predicted server load.
3. If synchronization is used, avoid to make the process blocked since this
is a server process. You do not want to force the single threaded mode. Some
asynchronous mechanism needs to be introduced. Even so, you might still
need to use snapshot depending on how real you want the system to be, and
what kind of performance penalty you can tolerate... in other words, a trade
off among qos.
There might be more since this is a really good open sever side system
design question.

【在 P***t 的大作中提到】
: 这题其实蛮好的。。。
avatar
k*o
36
只写函数,不用在具体环境实现么?
还是可以在main里用random函数模拟一下相应信号?

【在 r*******e 的大作中提到】
: 这题考的是设计,跟算法C++什么的没关系吧
: 一点想法:
: 一个全局变量记录响应数totalReqCount;
: 一个queue Q,每个元素是 pair
: in handleRequest()
: T = currentTime;
: while Q.front.first < T - 10
: totalReqCount -= Q.front.second
: Q.pop
: if Q.empty || Q.back.first != currentTime

avatar
x*o
37
不合适,你不搞这个的
avatar
p*2
38
这题multi thread怎么搞比较好?指名了用全局变量了。不同步怎么搞?
avatar
g*o
39

谢谢啊!我就觉得不合适,我简历没有这方面的经历,干嘛让我来on-site...我以为他
知道我没这方面经历,问问算法数据结构编程能力不就完了吗,其他的话有机会再学嘛

【在 x****o 的大作中提到】
: 不合适,你不搞这个的
avatar
g*o
40

他们的台球桌在进门门口哦,旁边乱七八糟摆着吃的喝的哦,旁边就是会议室哦,一边
开会一边能听见哒哒哒的打球声音的哦!后面就是所有办公桌哦,更能清楚听见哒哒哒
的打球声音哦!google也是这样嘛?

【在 l**********7 的大作中提到】
: yes.I saw a slide in lobby room.
avatar
g*o
41

貌似这题不是靠multi thread,我当时头晕的时候也先把mutex写出来了,还没写完,
就被告知不用考虑这些细节,我更晕了就。

【在 p*****2 的大作中提到】
: 这题multi thread怎么搞比较好?指名了用全局变量了。不同步怎么搞?
avatar
p*2
42

那上边给你的解法应该差不多了吧。

【在 g********o 的大作中提到】
:
: 貌似这题不是靠multi thread,我当时头晕的时候也先把mutex写出来了,还没写完,
: 就被告知不用考虑这些细节,我更晕了就。

avatar
g*o
43

请问这个Q是不是要很大才行,因为每秒都要记录不是吗?

【在 r*******e 的大作中提到】
: 这题考的是设计,跟算法C++什么的没关系吧
: 一点想法:
: 一个全局变量记录响应数totalReqCount;
: 一个queue Q,每个元素是 pair
: in handleRequest()
: T = currentTime;
: while Q.front.first < T - 10
: totalReqCount -= Q.front.second
: Q.pop
: if Q.empty || Q.back.first != currentTime

avatar
p*2
44

我没看他的code,但是你只是需要10秒,所以最多queue里有10个元素就可以了吧?

【在 g********o 的大作中提到】
:
: 请问这个Q是不是要很大才行,因为每秒都要记录不是吗?

avatar
g*o
45

哦对哦,我想太多了,以为他这次要10秒,下次要20秒。我问他传入参数是什么,他说
了传入参数不考虑,可能只是固定地要10秒就OK了。

【在 p*****2 的大作中提到】
:
: 我没看他的code,但是你只是需要10秒,所以最多queue里有10个元素就可以了吧?

avatar
g*o
46

所以我用的是小号,只是发泄一下。

【在 B***i 的大作中提到】
: 脾气还蛮大的。
avatar
c*y
47
my two cents
我觉得这个就是面试官想要的东西,但是有一个假设可能是必须的。如果和面试官确认
这个假设,估计得到的答复应该是肯定的。这个假设是T = currentTime返回的是时间
是以秒为单位的,而不是以ms等。这样的话,对于所有在同一秒进来的request,所返
回的时间T是相同的。因此可以用Q.back.second++来记录有多少个request是当前秒进
来的。
如果没有这个假设的话,就比较麻烦。举个简化的例子。我们现在只关心当前一秒内到
达request的个数。这个简化的问题和原来的问题几乎一样,只是从10秒平均减到1秒平
均。在下面的情况下,有没有这个假设可以导致两个不同的结果。
给定一种Request到达的情况是:只有两个Request,分辨在时间0.8秒和1.2秒到达,即
t1=0.8s和t2=1.2s。求当第二个Request到达时,当前的一秒内已经到达的Request的数
目。
如果有上面的假设的话(即T总是以秒为单位),t1=1和t2=2,所以返回结果是1,即在
第二秒内只有一个Request到达。
如果没有上面的假设,则t1=0.8和t2=1.2,返回结果是2,因为在时间区间[0.2,1.2]之
间有两个Request到达。
如果这个假设能够在最开始的时候我们就搞清楚的话,可能会更有帮助。

【在 r*******e 的大作中提到】
: 这题考的是设计,跟算法C++什么的没关系吧
: 一点想法:
: 一个全局变量记录响应数totalReqCount;
: 一个queue Q,每个元素是 pair
: in handleRequest()
: T = currentTime;
: while Q.front.first < T - 10
: totalReqCount -= Q.front.second
: Q.pop
: if Q.empty || Q.back.first != currentTime

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