V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  jadetang  ›  全部回复第 25 页 / 共 25 页
回复总数  498
1 ... 16  17  18  19  20  21  22  23  24  25  
@raptium
二分查找的话,是离散的查找吧。比如歌曲的评分是 [1,2,3,]如果是你生成的随机数,只有1,2,3这个三个取值,那么自然hashMap什么的是最高效的。问题是,需要把离散的评分,变成连续的区间段,这个时候能用2分查找?也许线段树能做到?等高人解答。
@osto
你说到点子上了,我的scala解,返回的就是歌曲的下标。而且每次选择都是o(1)的时间。

我主要想不出面试官的的映射函数是怎么样的,这个函数能否达到o(1)的时间。或者根本没有这样的映射?



class RandomSong(val rate: Array[Double]) {
val rateWithIndex = rate.map(x => (x * 10).toInt).zipWithIndex

val songPool = rateWithIndex.flatMap { case (rate, index) => Array(index).padTo(rate, index)}

def pickSong:Int = songPool(Random.nextInt(songPool.size))

}
@crisrock
看题目的字面要求,如果是评分是1和0的话,那么播放的概率比应该是1:0。
@sNullp
我只能说,基于题目给出的条件,这样的算法是最合适的,每个算法都是优缺点吧。如果是评分是后两位小数,那我的算法空间复杂度还是o(n),不过已经高一个数量级了。
@laoyuan
不是虾米

@zmj1316
关键是我想不明白,如何从区间里面拿到对应的key,例如有三首歌的评分[1,2,3],那么有三个区间[0-1,1-3,3-6],现在给出一个随机数3.6,有什么数据结构能够判断出,3.6是在第三个区间里面?
也许我真的想错了,所以要先到V站上来找答案啊。
我也是zh的,帮顶
2015-05-09 09:51:11 +08:00
回复了 tennix 创建的主题 程序员 今天面试被问到 Python 的设计模式,直接给跪了
java程序员,会一点python,现在在用scala写项目。所谓oo里面的设计模式和fp里面的pattern是对比是这样的
oo fp
装饰器 函数
工厂模式 函数
访问者 函数
。。。。 函数
2015-05-09 09:42:09 +08:00
回复了 vivotech 创建的主题 酷工作 佛山唯思技术部招聘 PHP 程序猿
周六上半天班,算加班吗
楼主要不要来我们公司啊,美丽的海滨城市,互联网公司。
这个是什么逻辑呢,看不懂?
难道不是每个公司都有固定的层级以及对应的薪水的吗?
你面试是多少级,那不就有个大致范围咯。
我就是 "我TM的什么玩意都做" 的典型
我的建议是:反正是吃饭,随便搞搞就好了。碰到自己感兴趣,或者觉得对自己有提高的,在投入精力去弄。
2015-05-05 20:51:10 +08:00
回复了 jadetang 创建的主题 求职 求前端工程师给一点建议 [非求职]
@SoloCompany
怎么说呢,如果是后端,不管是OO或者FP,都有一定的pattern可以借鉴,写出来的代码是可以维护的。
但是我目前接触到的前端代码,都是感觉为了完成一个功能而写的。比如为了实现一个联动,就写一个函数。不知道是不是我没有看过好的前端代码。
2015-05-05 19:02:04 +08:00
回复了 jadetang 创建的主题 求职 求前端工程师给一点建议 [非求职]
@ljcarsenal 前端简单的增删改查我会做的,但是很复杂的交互我就做不了。学习的话,看那些前端的书,html,css,javascript我也知道简单的语法。但是,如果前端代码的怎么组织,怎么能够做大最大程度复用,书上就很少有提及了。
请问期权是不是等上市了才有意义?
2015-04-10 10:37:47 +08:00
回复了 nkssai 创建的主题 问与答 scala sbt 国内源
请问这个东西怎么配置?求教程
2015-04-10 10:35:03 +08:00
回复了 yuankui 创建的主题 职场话题 两个 offer,如何抉择?
我建议选择钱多的
1. 工资很重要,反映了你的价值。
2. 期权在没上市之前就是一张纸,即便上市了,也有可能被稀释。退出机制什么的,也要说清楚。
1 ... 16  17  18  19  20  21  22  23  24  25  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2910 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 28ms · UTC 14:23 · PVG 22:23 · LAX 06:23 · JFK 09:23
Developed with CodeLauncher
♥ Do have faith in what you're doing.