一亩三分地论坛

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

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

Uber二面

[复制链接] |试试Instant~ |关注本帖
laurie洁 发表于 2015-8-26 05:58:11 | 显示全部楼层 |阅读模式

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

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

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

x
一个国人小哥,先问了问我的背景,想做什么,我说data analytics相关,predictive modeling之类。然后问我用过什么工具,我说R, Python软件包建desicion tree, random forest模型。于是问random forest的概念,以及当有很多data或者很多树的时候,会不会overfit。
然后感觉小哥是要给我放水吗?问我想做coding题还是algorithm题。我说不知道建一个algorithm会有多难,咱还是coding吧。
于是问了一道best time to buy and sell stock I 的变形。就是给了一定的钱,可以买非整数股。
大环境下大家都在时时刻刻关心股票的节奏吗?



. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴

补充内容 (2015-8-27 05:06):
今天收到onsite通知~~

评分

1

查看全部评分

airwindow 发表于 2015-10-11 04:51:36 | 显示全部楼层
f1371342385 发表于 2015-9-6 07:32
LZ请问这个可以买非整数股对题目有啥影响呢?和原题目的话,有啥不一样呢?

以下是我的一点愚见哈:
原题:
If you were only permitted to complete at most one transaction (ie, buy one and sell one share of the stock), design an algorithm to find the maximum profit

题目说得比较隐晦,但是我们实际上是允许买卖一次股票(只有一股,无论多贵),问最大利润。. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
显然的思路就是:选出最大(sell_price - buy_price), 其中buy_price一定要出现在sell_price前面。
但是lz碰到的revised version里面,是给定一定的money(你可以买任意数量股票,甚至面试官简化到了可以只买分数形式股票),那么这时候我们需要care的就是这些money能挣到的最多钱了。. Waral 鍗氬鏈夋洿澶氭枃绔,

Example:. 1point 3acres 璁哄潧
[10, 17, 5, 10]
传统stock sell and buy问题,答案很显然应该是:17 - 10 = 7.. from: 1point3acres.com/bbs
revised version: given 20刀让你交易,那么最优的策略就应该是:
buy_price: 5, sell_price: 10. profit = ((10/5) - 1) * 20 = 20刀,
很显然,如果用传统问题的交易策略,我们只能获得 profit = ((17/10) - 1) * 20 = 14刀。



. 1point3acres.com/bbs


我想到的办法是:把"profit_rate = sell_price / buy_price"作为目标。


回复 支持 1 反对 0

使用道具 举报

leixiang5 发表于 2015-8-26 06:20:03 | 显示全部楼层
楼主填application的有没有选组啊。。我不知道选哪个组- -。我都蛮喜欢的。
回复 支持 反对

使用道具 举报

 楼主| laurie洁 发表于 2015-8-26 06:32:39 | 显示全部楼层
leixiang5 发表于 2015-8-26 06:20
楼主填application的有没有选组啊。。我不知道选哪个组- -。我都蛮喜欢的。

有,但是不记得选的什么了~汗~~~.鏈枃鍘熷垱鑷1point3acres璁哄潧
我一面的小哥把我转到了二面的组
回复 支持 反对

使用道具 举报

leixiang5 发表于 2015-8-26 06:43:02 | 显示全部楼层
好吧。看来大概是因为你说了你想做什么。所以把你转了. 1point3acres.com/bbs
祝楼主拿到on-site。. from: 1point3acres.com/bbs
回复 支持 反对

使用道具 举报

 楼主| laurie洁 发表于 2015-8-26 07:11:52 | 显示全部楼层
leixiang5 发表于 2015-8-26 06:43
好吧。看来大概是因为你说了你想做什么。所以把你转了. more info on 1point3acres.com
祝楼主拿到on-site。

谢谢!!的确是的~~借你吉言哦
回复 支持 反对

使用道具 举报

psychiatrichwj 发表于 2015-9-5 04:15:32 | 显示全部楼层
这么巧。。你也要面Uber啊。。我们都是面完Fb面Uber麻。。。
回复 支持 反对

使用道具 举报

f1371342385 发表于 2015-9-6 07:32:12 | 显示全部楼层
LZ请问这个可以买非整数股对题目有啥影响呢?和原题目的话,有啥不一样呢?
回复 支持 反对

使用道具 举报

又见紫风铃 发表于 2015-10-9 05:31:18 | 显示全部楼层
给了一定钱是什么意思?钱不够买整股的时候就买一部分?
回复 支持 反对

使用道具 举报

majiamajia 发表于 2015-10-9 06:30:44 | 显示全部楼层
楼主多久有的2面通知?
回复 支持 反对

使用道具 举报

airwindow 发表于 2015-10-11 04:22:05 | 显示全部楼层
谢谢lz分享... 想问问这道题的解法.
传统Stock Buy and Sell 1,我们假设没有资金的限制,但实际的求解效果是只买了和卖了一只股票(最大差价 = sell_price - buy_price)
但是对这道题,我们实际上是可以买部分股票(股票数:money / stock_prices), 于是我们关心的是资金带来的赚钱rate(rate = sell_price / buy_price ). 所以我们可以有以下算法.
  1. int maxProfit(double[] prices, amount) {
  2.         if (prices == null || prices.length <= 1). 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
  3.                 return 0;. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
  4.         double max_rate = 1.0;
  5.         double min_price = prices[0];
  6.         for (int i = 1; i < prices.length; i++) {. From 1point 3acres bbs
  7.                 max_rate = Math.max(max_rate, prices[i] / min_price);
  8.                 min_price = Math.min(max_pricess, prices[i]);
  9.         }
  10.         return (max_rate == 1 ? 0 : (max_rate - 1) * amount);
  11. }
复制代码
回复 支持 反对

使用道具 举报

f1371342385 发表于 2015-10-11 06:06:57 | 显示全部楼层
airwindow 发表于 2015-10-11 04:51
以下是我的一点愚见哈:
原题:
If you were only permitted to complete at most one transaction (ie ...

LS说的非常有道理,受教了
回复 支持 反对

使用道具 举报

bobzhang2004 发表于 2016-2-10 10:52:36 | 显示全部楼层
请问楼主这个是怎么做的呢?
回复 支持 反对

使用道具 举报

bobzhang2004 发表于 2016-2-10 10:55:59 | 显示全部楼层
请问是可以交易几次呢?如果是一次的话,那一点都没变啊
回复 支持 反对

使用道具 举报

本版积分规则

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

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

关闭

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

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

custom counter

GMT+8, 2016-12-8 22:45

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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