美国买被子or国内带被子?

一亩三分地论坛

 找回密码
 Sign Up 注册获取更多干货

最近看过此主题的会员

E轮2.5亿美元融资
K12教育独角兽一起作业
北京-诚聘人工智能/教育/大数据岗
码农求职神器Triplebyte:
不用海投
内推多家公司面试
坐标湾区
Games Startup
招聘游戏开发工程师
游戏初创公司招聘工程师、UIUX Designer和游戏策划
查看: 2023|回复: 15
收起左侧

F店面

[复制链接] |试试Instant~ |关注本帖
我的人缘0
9zai 发表于 2017-9-16 05:07:42 | 显示全部楼层 |阅读模式
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  87% (7)
 
 
12% (1)  踩

2017(7-9月) 码农类General 硕士 全职@Facebook - 内推 - 技术电面  | Other | fresh grad应届毕业生

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

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

x
刚面完,貌似是中国小哥,人很nice,开头聊了一下项目,然后开始做题,只有一道,有点像OOD,不太清楚是不是原题。写一个构造函数和声称函数,构造函数给一个map,放字符串和概率,声称函数根据概率返回字符串。(谁知道是哪道原题也说一声)

评分

参与人数 2大米 +10 收起 理由
AnthonyNeu + 5 感谢分享!
jeff_xu001 + 5 感谢分享!

查看全部评分


上一篇:Rubrik 挂经
下一篇:twitter oa

本帖被以下淘专辑推荐:

我的人缘0
jigsaw_Becky 发表于 2017-9-16 12:12:23 | 显示全部楼层
本楼: 【顶】   100% (1)
 
 
0% (0)   【踩】
全局: 顶  93% (601)
 
 
6% (39)  踩
没有理解题目。。。。麻烦谁能解释一下吗?

是这个意思吗?

“ABC”的概率是80%,“DE”的概率是20%。
问:如果概率是50%,应该返回哪个string?

怎么感觉好奇怪。。。

谢谢!!!!

补充内容 (2017-9-16 12:21):. From 1point 3acres bbs
知道了,根据楼上们的回复,应该是这道题:
http://www.1point3acres.com/bbs/thread-189034-1-1.html
回复

使用道具 举报

我的人缘0
chris612ku 发表于 2017-9-16 09:40:43 | 显示全部楼层
本楼: 【顶】   100% (1)
 
 
0% (0)   【踩】
全局: 顶  100% (15)
 
 
0% (0)  踩
cutehuazai 发表于 2017-9-16 09:13
什么叫cumulative array

假设[1,3,4,6,2,3]是given weights
自己create一个array变成[1,4,8,14,16,19]
然后int r = rand() % array.back() + 1;
这时候r值就只会在1 - 19,
在这个区间做binary search, 看在落在那个区间,对应的idx就是我的output.留学论坛-一亩-三分地
For example:r = 10,就是属于第四个(idx = 3)的element

这是我的做法,不知道是不是最优解,欢迎有人provide更优解或点评.本文原创自1point3acres论坛

谢谢
回复

使用道具 举报

我的人缘0
chris612ku 发表于 2017-9-16 05:19:38 | 显示全部楼层
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  100% (15)
 
 
0% (0)  踩
楼主,这题的意思是不是当call getString这个声称函数的时候,要按照他们的概率随机return 一个string?
回复

使用道具 举报

我的人缘0
 楼主| 9zai 发表于 2017-9-16 06:17:11 | 显示全部楼层
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  87% (7)
 
 
12% (1)  踩
chris612ku 发表于 2017-9-16 05:19
楼主,这题的意思是不是当call getString这个声称函数的时候,要按照他们的概率随机return 一个string?

对的对的对的对的
回复

使用道具 举报

我的人缘0
yikehongxin 发表于 2017-9-16 06:32:07 | 显示全部楼层
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  91% (231)
 
 
8% (22)  踩
那应该考的是根据概率随机返回字符串吧,比如abc的概率是90%,则返回的结果有90%左右应该是‘abc’,楼主是这个意思吧?
回复

使用道具 举报

我的人缘0
chris612ku 发表于 2017-9-16 06:39:22 | 显示全部楼层
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  100% (15)
 
 
0% (0)  踩
9zai 发表于 2017-9-16 06:17
对的对的对的对的

哦哦,了解,谢谢楼主的回复
这个应该是一个面经的变形,面经原题是Random Pick in an array with given Weights,
就是每个offset有自己的的weights,然后按照weights的概率return相对应的index. 围观我们@1point 3 acres
. from: 1point3acres
自己的做法是create一个cumulative array,然后random generate 一个number mod by total weights,
然后做binary search,觉得楼主这题可以做类似的做法

不知道楼主在店面的时候是怎么回答的?

谢谢
回复

使用道具 举报

我的人缘0
summerlismile 发表于 2017-9-16 07:50:21 | 显示全部楼层
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  100% (28)
 
 
0% (0)  踩
想到一个算法 和楼主讨论下
. 一亩-三分-地,独家发布
建立一个长度是100的数组 string[] array = new string[100]. 标记一个indexHeader 比如给出abc是N% 就以indexHeader开始吧后面的N个全赋值为abc 最后 int i = random.next(0,100)return array[i]。

谢谢
Mobile Apps Category (English)728x90
回复

使用道具 举报

我的人缘0
cutehuazai 发表于 2017-9-16 09:12:43 来自手机 | 显示全部楼层
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  86% (101)
 
 
13% (16)  踩
summerlismile 发表于 2017-9-16 07:50
想到一个算法 和楼主讨论下

建立一个长度是100的数组 string[] array = new string[100]. 标记一个inde ...
. visit 1point3acres for more.
what if概率可以是小数。
回复

使用道具 举报

我的人缘0
cutehuazai 发表于 2017-9-16 09:13:58 来自手机 | 显示全部楼层
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  86% (101)
 
 
13% (16)  踩
chris612ku 发表于 2017-9-16 06:39
哦哦,了解,谢谢楼主的回复. 一亩-三分-地,独家发布
这个应该是一个面经的变形,面经原题是Random Pick in an array with given ...

什么叫cumulative array
回复

使用道具 举报

我的人缘0
cutehuazai 发表于 2017-9-16 10:14:31 | 显示全部楼层
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  86% (101)
 
 
13% (16)  踩
chris612ku 发表于 2017-9-16 09:40
假设[1,3,4,6,2,3]是given weights.1point3acres网
自己create一个array变成[1,4,8,14,16,19]
然后int r = rand() % ar ...

恩,我的想法跟你是一样的.只是不知道那个叫cumulative array.
回复

使用道具 举报

我的人缘0
chris612ku 发表于 2017-9-16 10:30:05 | 显示全部楼层
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  100% (15)
 
 
0% (0)  踩
cutehuazai 发表于 2017-9-16 10:14
恩,我的想法跟你是一样的.只是不知道那个叫cumulative array.

我也就是脑袋想什么就讲什么而已,也没有什么特定的名字啦
哈哈
回复

使用道具 举报

我的人缘0
goha111 发表于 2017-9-17 04:02:42 | 显示全部楼层
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  88% (90)
 
 
11% (12)  踩
请问lz是哪天面试的~~   
回复

使用道具 举报

我的人缘0
51offer888 发表于 2017-9-17 05:25:34 | 显示全部楼层
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  91% (11)
 
 
8% (1)  踩
chris612ku 发表于 2017-9-16 09:40
假设[1,3,4,6,2,3]是given weights
自己create一个array变成[1,4,8,14,16,19]
然后int r = rand() % ar ...

.本文原创自1point3acres论坛查了下没有array.back()这个function啊?这个function是做什么的呢
你怎么知道这道题用 int r = rand() % array.back() + 1 用这个公式啊. Waral 博客有更多文章,
谢谢!
回复

使用道具 举报

我的人缘0
chris612ku 发表于 2017-9-17 07:30:38 | 显示全部楼层
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  100% (15)
 
 
0% (0)  踩
51offer888 发表于 2017-9-17 05:25. 牛人云集,一亩三分地
查了下没有array.back()这个function啊?这个function是做什么的呢
你怎么知道这道题用 int r = rand()  ...

你不用太在意array.back()是什么
这个写法只是因为地里有C++, Java, Python的选手,所以写个简单大家比较看的懂的而已
其实就是假设你有一个array他的size是len好了, array.back()在这里的意思就是array[len-1]

用int r = rand() % array[len-1] + 1这个公式是因为
假设我的input weights是[2, 3, 2, 4, 1]好了,所以我会把他转化成cumulative array [2, 5, 7, 11, 12] 然后做binary search
+1的原因是因为这里要的东西是从1~12而不是0~11
-google 1point3acres
大概是这个意思
回复

使用道具 举报

我的人缘0
AnthonyNeu 发表于 2017-10-9 11:05:37 | 显示全部楼层
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  98% (79)
 
 
1% (1)  踩
和这个比较类似了: http://www.1point3acres.com/bbs/thread-294445-1-1.html. 一亩-三分-地,独家发布

另一个帖子找到的答案,帖子找不到了: https://stackoverflow.com/questions/6737283/weighted-randomness-in-java
回复

使用道具 举报

游客
请先登录

本版积分规则

提醒:发帖可以选择内容隐藏,部分板块支持匿名发帖。请认真读完以下全部说明:

■隐藏内容方法: [hide=200]你想要隐藏的内容比如面经[/hide]
■意思是:用户积分低于200则看不到被隐藏的内容
■可以自行设置积分值,不建议太高(200以上太多人看不到),也不建议太低(那就没必要隐藏了)
■建议只隐藏关键内容,比如具体的面试题目、涉及隐私的信息,大部分内容没必要隐藏。
■微信/QQ/电子邮件等,为防止将来被骚扰甚至人肉,以论坛私信方式发给对方最安全。
■匿名发帖的板块和方法:http://www.1point3acres.com/bbs/thread-405991-1-1.html

手机版|小黑屋|一亩三分地论坛声明

custom counter

GMT+8, 2018-7-21 12:05

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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