一亩三分地论坛

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

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

Zenefits店面

[复制链接] |试试Instant~ |关注本帖
无聊的ttt 发表于 2015-9-29 10:24:19 | 显示全部楼层 |阅读模式

2015(7-9月) 码农类 硕士 全职@zenefits - 网上海投 - 技术电面 |Otherfresh grad应届毕业生

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

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

x
两个题,第一个sqrt,follow up让给个比log(n)再小的解法,我说存吧,面试大哥也没说啥
第二题,shorten url, 搞不清楚他的expectation是什么,于是就用hash写了getUrl(), shortenUrl().

本帖被以下淘专辑推荐:

kelvinzhong 发表于 2015-9-29 10:54:50 | 显示全部楼层
比log n 还小的解法是什么啊?
回复 支持 反对

使用道具 举报

leixiang5 发表于 2015-9-29 11:07:21 | 显示全部楼层
kelvinzhong 发表于 2015-9-29 10:54
比log n 还小的解法是什么啊?

网上查的

There’s also a constant time O(1) solution which involves a clever math trick. Here it is:. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷

\sqrt{N} = N^{0.5} = 2^{log_2N^{0.5}} = 2^{0.5log_2{N}}  

This solution exploits the property that if we take the exponent of the log of a number, the result  doesn’t change, it’s still the number itself. So we can first calculate the log of a number, multiply with 0.5, take the exponent, and finally take the floor of that value to round it down. This way we can avoid using the sqrt function by using the log function. Logarithm of a number rounded down to the nearest integer can be calculated in constant time, by looking at the position of the leftmost 1 in the binary representation of the number. For example, the number 6 in binary is 110, and the leftmost 1 is at position 2 (starting from right counting from 0). So the logarithm of 6 rounded down is 2. This solution doesn’t always give the same result as above algorithms though, because of the rounding effects. And depending on the interviewer’s perspective this approach can be regarded as either very elegant and clever, or tricky and invalid. But in any case it definitely worths mentioning, ultimately it proves that you’re aware of math shortcuts. Which is always a desired talent in every job candidate.

- See more at: http://www.ardendertat.com/2012/ ... thash.OaPW6YJu.dpuf
回复 支持 反对

使用道具 举报

cjlm007 发表于 2015-9-29 11:25:01 | 显示全部楼层
kelvinzhong 发表于 2015-9-29 10:54-google 1point3acres
比log n 还小的解法是什么啊?

https://en.wikipedia.org/wiki/Fast_inverse_square_root
回复 支持 反对

使用道具 举报

kelvinzhong 发表于 2015-9-29 13:05:28 | 显示全部楼层
leixiang5 发表于 2015-9-29 11:07
网上查的

There’s also a constant time O(1) solution which involves a clever math trick. Here ...

这个。。太tricky了吧。。
回复 支持 反对

使用道具 举报

diefunction 发表于 2015-9-29 13:15:10 | 显示全部楼层
这是著名的newton's method。。。。
回复 支持 反对

使用道具 举报

diefunction 发表于 2015-9-29 13:15:42 | 显示全部楼层
diefunction 发表于 2015-9-29 13:15
这是著名的newton's method。。。。

说错了,还可以用著名的newton's method
回复 支持 反对

使用道具 举报

kelvinzhong 发表于 2015-9-29 13:20:54 | 显示全部楼层
diefunction 发表于 2015-9-29 13:15. 鍥磋鎴戜滑@1point 3 acres
说错了,还可以用著名的newton's method

newton's method貌似也是复杂度log(N)要慢吧?
回复 支持 反对

使用道具 举报

wyx63953 发表于 2015-9-29 16:42:46 | 显示全部楼层
leixiang5 发表于 2015-9-29 11:07
网上查的
. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
There’s also a constant time O(1) solution which involves a clever math trick. Here ...

回复 支持 反对

使用道具 举报

1064no1carry 发表于 2015-9-30 03:35:23 | 显示全部楼层
数最右端的1的位置,不也是log n 么。。。
回复 支持 反对

使用道具 举报

liyanjia92 发表于 2015-10-27 06:32:44 | 显示全部楼层
newton method加magic number?
回复 支持 反对

使用道具 举报

 楼主| 无聊的ttt 发表于 2015-10-27 09:36:40 | 显示全部楼层
liyanjia92 发表于 2015-10-27 06:32
newton method加magic number?

表示不懂~~~
回复 支持 反对

使用道具 举报

zhuo 发表于 2015-10-29 03:31:25 | 显示全部楼层
shorten url 题的意思是啥?简化url?没明白。。。。。
回复 支持 反对

使用道具 举报

本版积分规则

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

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

关闭

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

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

custom counter

GMT+8, 2016-12-3 12:41

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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