一亩三分地论坛

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

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

Uber 电面 * 2 求大米

[复制链接] |试试Instant~ |关注本帖
surezero 发表于 2015-10-20 07:13:05 | 显示全部楼层 |阅读模式

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

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

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

x
觉得Uber应该是来不及了 上周三一个奇怪的二面结束之后现在还没有消息 下周五deadline...
这周三有一个msft的On campus,不过基本是吐槽去的。。。. Waral 鍗氬鏈夋洿澶氭枃绔,

Uber:.鐣欏璁哄潧-涓浜-涓夊垎鍦
电面#1:
罗马尼亚人杜克phD 吓坏土鳖了. 是个应用题.
我就直接贴题了.
We have access to 2 external endpoints:
1. /locations/{pizza type}
Returns a list of strings representing all our locations that produce that type of pizza.

Example:
/locations/hawaiian : [“TrainStation”, “University”]. more info on 1point3acres.com

2.  /nextPizzaTime/{location}/{pizza type}
Returns the earliest time in minutes until that location produces the provided type of pizza

Example:
/nextPizzaTime/TrainStation/hawaiian : 7
/nextPizzaTime/University/hawaiian : 11

简单地说, 有以上两个接口, 写第三个:. 1point3acres.com/bbs
We need to expose an endpoints that returns the earliest time ANY of our locations can produce a pizza type
/nextPizzaTime/{pizza type}. from: 1point3acres.com/bbs

Follow up: 第三个接口总被调用, 如何优化? 总之这题有点文字游. 不适应口音通话质量差有点被问傻了. 总之感觉是跪了.
没想到转天收到了二面通知.

电面#2:
这面试是我面过最奇怪的没有之一. 上来对方自我介绍了一下, 然后说, 咱们写点js吧.
于是就写了个这个: http://stackoverflow.com/questio ... be-called-only-once
我只是说了怎么写, 然后代码是他写的. 用了一些我没见过的语法. 然后就是聊天了.
总有一种感觉是第一轮面的太渣了走个程序把我挂掉.
. From 1point 3acres bbs
大米. 顺便问问有没有一月想在bellevue找房子的?.鏈枃鍘熷垱鑷1point3acres璁哄潧
. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷

评分

2

查看全部评分

cx00001 发表于 2016-4-4 11:19:37 | 显示全部楼层
通过pizza type(第一个for loop) 调用 第一个函数? 然后获得location,调用第二个函数 获得每个location对应的时间(第二个for loop),然后选一个最小的location和它的时间放入answer中。。。。感觉优化就是有点像lru了,把每个pizza都对应一个lru cache,然后加一个timer之类的,时间超时就把第一个地点删了 重新取加入,这个操作再调用第三个函数的时候执行,这样可以减少反复调用第一第二个api
回复 支持 1 反对 0

使用道具 举报

zhenghao58 发表于 2015-10-27 06:20:26 | 显示全部楼层
第一次店面楼主怎么做的?优化方案是?
回复 支持 反对

使用道具 举报

harryhu0705 发表于 2016-4-17 05:21:51 | 显示全部楼层
cx00001 发表于 2016-4-4 11:19
通过pizza type(第一个for loop) 调用 第一个函数? 然后获得location,调用第二个函数 获得每个location ...

这个想法说的很好~我觉得是这样的!但是这个应该有个assumption就是每种pizza对于每个location是周期性生产的。然后还有一个就是pizza type并不太多,要不然无论是用lru还是用mru都会造成miss的情况。
回复 支持 反对

使用道具 举报

jiebour 发表于 2016-6-20 08:31:37 | 显示全部楼层
js题目不就是js最常问的closure嘛.1point3acres缃
回复 支持 反对

使用道具 举报

liurudahai 发表于 前天 06:06 | 显示全部楼层
harryhu0705 发表于 2016-4-17 05:21. from: 1point3acres.com/bbs
这个想法说的很好~我觉得是这样的!但是这个应该有个assumption就是每种pizza对于每个location是周期性 ...

不用有固定周期,但是必须是一个接一个生产就行吧,首先先CALL一轮PIZZA所有LOCATION,按时间放到LINKEDLIST里,一个新的的CALL进来,看LIST头,没有EXPIRE直接返回LIST头,如果已经EXPIRE了,删掉,重新CALL那个LOCATION,然后和第二个比较,依次类推

补充内容 (2016-12-2 06:10):
其实与其说是LRU,不如说是MERGE N SORTED LIST,那么放到一个HEAP里感觉更好
回复 支持 反对

使用道具 举报

本版积分规则

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

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

关闭

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

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

custom counter

GMT+8, 2016-12-4 02:08

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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