一亩三分地论坛

 找回密码
 获取更多干货,去instant注册!

扫码关注一亩三分地公众号
查看: 1476|回复: 10
收起左侧

Snapchat电面面经攒一发人品

[复制链接] |试试Instant~ |关注本帖
liranxixi 发表于 2015-11-24 16:27:12 | 显示全部楼层 |阅读模式

2016(10-12月) 码农类 硕士 全职@Snapchat - 内推 - 技术电面 |Otherfresh grad应届毕业生

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看,没有帐号?获取更多干货,去instant注册!

x
不是常见的BigInt, ZigzagPrint, Minimum window size类似题, 估计挂了想想还是来攒攒人品吧~. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
题目是parse log, 输入有三列分别是jobname(String)    start/end(boolean)    timeStamp(long), 输入要求是每一个job的start/end time pairs.
开始花了一会儿才搞懂题目,本来以为是类似Amazon 里的round ronbin那种题……不得不吐槽为啥每次像这种类似googledoc的上面写代码delay都特别大,还各种不好使……  

评分

1

查看全部评分

kennethinsnow 发表于 2015-11-25 15:24:15 | 显示全部楼层
每个function一个stack, start就push, end就pop, pop完的时候如果stack是空,写入另一个跟你的结构相同的map
回复 支持 1 反对 0

使用道具 举报

he2004365 发表于 2015-11-25 04:38:25 | 显示全部楼层
楼主能讲明白点么?最后输出是啥?不是round ronbin的话,用什么replacement algorithm?
回复 支持 反对

使用道具 举报

 楼主| liranxixi 发表于 2015-11-25 09:55:35 | 显示全部楼层
he2004365 发表于 2015-11-25 04:38
楼主能讲明白点么?最后输出是啥?不是round ronbin的话,用什么replacement algorithm?

其实这个是执行类似round robin以后的步骤,我一开始也没明白。输入可能是这样的:
name(String)    start/end(boolean)    timeStamp(long) . From 1point 3acres bbs
f1                   start                        0. 鍥磋鎴戜滑@1point 3 acres
f2                   start                        2
f1                   end                         5
f3                   start                        6
f2                   end                         8. From 1point 3acres bbs
f1                   start                        9
f3                   end                         10. more info on 1point3acres.com
f1                   end                         11
输出:
f1: [0:5], [9, 11]. 1point 3acres 璁哄潧
f2: [2, 8]
f3: [6, 10]
回复 支持 反对

使用道具 举报

he2004365 发表于 2015-11-25 10:36:22 | 显示全部楼层
liranxixi 发表于 2015-11-25 09:55
其实这个是执行类似round robin以后的步骤,我一开始也没明白。输入可能是这样的:
name(String)    sta ...

谢谢楼主,好人一生平安~
回复 支持 反对

使用道具 举报

MCwong 发表于 2015-11-25 12:34:56 | 显示全部楼层
能不能维护两个map,一个存job和state, 另一个存job和timeStamp,这样有些invalid的输入也比较容易判断出来。不知lz后来怎么实现的
回复 支持 反对

使用道具 举报

 楼主| liranxixi 发表于 2015-11-25 14:07:43 | 显示全部楼层
MCwong 发表于 2015-11-25 12:34 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
能不能维护两个map,一个存job和state, 另一个存job和timeStamp,这样有些invalid的输入也比较容易判断出来 ...

啊看了一下,我描述有偏差~应该是:
f1  start  0.鐣欏璁哄潧-涓浜-涓夊垎鍦
// f2  start  2. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
// f1  start  5
// f1  end   7
// f2  end  10
// f3  start  11.鏈枃鍘熷垱鑷1point3acres璁哄潧
// f3  end   12
// f1  end   15
// f4  start  16
// f4  end   19
. visit 1point3acres.com for more.
// asuming there is only one CPU
// f1: [0,2], [5, 7], [10, 11], [12 15]
// f2: [2,5], [7, 10]
// f3: [11, 12]. visit 1point3acres.com for more.
// f4: [16, 19
我是用HashMap<String, List<List<Integer>>>做的
回复 支持 反对

使用道具 举报

kennethinsnow 发表于 2015-11-25 14:49:35 | 显示全部楼层
liranxixi 发表于 2015-11-25 14:07
啊看了一下,我描述有偏差~应该是:
f1  start  0
// f2  start  2

这题我也碰到过,在google
后续会问你如何处理recursive call.比如. from: 1point3acres.com/bbs
f1 start 0
f1 start 2
f1 start 4
f1 end 6
f1 end 8. 鍥磋鎴戜滑@1point 3 acres
f1 end 10.1point3acres缃
这时应该只log f1 0 10
当然前提是single cpu single thread
回复 支持 反对

使用道具 举报

 楼主| liranxixi 发表于 2015-11-25 15:14:39 | 显示全部楼层
kennethinsnow 发表于 2015-11-25 14:49
这题我也碰到过,在google
后续会问你如何处理recursive call.比如
f1 start 0

那你是怎么做的呢?
回复 支持 反对

使用道具 举报

 楼主| liranxixi 发表于 2015-11-25 16:13:05 | 显示全部楼层
kennethinsnow 发表于 2015-11-25 15:24
每个function一个stack, start就push, end就pop, pop完的时候如果stack是空,写入另一个跟你的结构相同的ma ...

嗯,谢谢啦~
回复 支持 反对

使用道具 举报

TsengJuiWang 发表于 2016-4-22 01:45:56 | 显示全部楼层
liranxixi 发表于 2015-11-25 14:07
啊看了一下,我描述有偏差~应该是:
f1  start  0. visit 1point3acres.com for more.
// f2  start  2
. visit 1point3acres.com for more.
楼主,为啥<10,11>是f1呀?
回复 支持 反对

使用道具 举报

本版积分规则

请点这里访问我们的新网站:一亩三分地Instant.

Instant搜索更强大,不扣积分,内容组织的更好更整洁!目前仍在beta版本,努力完善中!反馈请点这里

关闭

一亩三分地推荐上一条 /5 下一条

手机版|小黑屋|一亩三分地论坛声明 ( 沪ICP备11015994号 )

custom counter

GMT+8, 2016-12-10 23:55

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

快速回复 返回顶部 返回列表